How do you limit the inline formset in django admin?
Problem:
I have a table A with 1 to n relationship with B. Table A should have at least one Table B item and a max of 5 Table B items.
How do you limit the inline formset in django admin?
Problem:
I have a table A with 1 to n relationship with B. Table A should have at least one Table B item and a max of 5 Table B items.
http://docs.djangoproject.com/en/dev/ref/contrib/admin/#inlinemodeladmin-options
Specify max_num
in your Inline
definition to limit the number.
extra
specifies how many blank inlines to show.
Is the 1 inline required? As in you want to trigger a validation error if table B isn't filled with at least 1 row?
The enabling / disabling of the add button in an inline is managed through the _has_add_permission
method
you could add to your inline class:
def _has_add_permission(self, request, obj=None):
# add/remove possibility to add a line to an inline
if obj.table_b_items.count() < 5:
return True
else:
return False