Re: [Django] #12697: Prevent deletion of some rows in a formset

5 views
Skip to first unread message

Django

unread,
Oct 26, 2014, 4:19:17 AM10/26/14
to django-...@googlegroups.com
#12697: Prevent deletion of some rows in a formset
-----------------------------+------------------------------------
Reporter: shadfc | Owner: nobody
Type: New feature | Status: new
Component: Forms | Version: 1.1
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-----------------------------+------------------------------------

Comment (by darklow):

I found a very easy solution for this problem to avoid unwanted deletion
of some inlines
You can just override delete_forms property method.

{{{
class MyInlineFormSet(BaseInlineFormSet):

@property
def deleted_forms(self):
deleted_forms = super(MyInlineFormSet, self).deleted_forms

for i, form in enumerate(deleted_forms):
if some_criteria_to_prevent_deletion:
deleted_forms.pop(i)

return deleted_forms
}}}

--
Ticket URL: <https://code.djangoproject.com/ticket/12697#comment:5>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

Reply all
Reply to author
Forward
0 new messages