mirror of
https://github.com/django/django.git
synced 2025-07-04 17:59:13 +00:00
[per-object-permissions] Fixed a bug where the RLP for an inline object would only be set when changing an object not adding
git-svn-id: http://code.djangoproject.com/svn/django/branches/per-object-permissions@3896 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
46f6dc7e4e
commit
3f60a8e98d
@ -130,6 +130,7 @@ class AutomaticManipulator(forms.Manipulator):
|
||||
|
||||
expanded_data = DotExpandedDict(dict(new_data))
|
||||
self.new_rel_objs = []
|
||||
|
||||
# Save many-to-one objects. Example: Add the Choice objects for a Poll.
|
||||
for related in self.opts.get_all_related_objects():
|
||||
# Create obj_list, which is a DotExpandedDict such as this:
|
||||
@ -208,12 +209,14 @@ class AutomaticManipulator(forms.Manipulator):
|
||||
if self.change:
|
||||
if not old_rel_obj: # This object didn't exist before.
|
||||
self.fields_added.append('%s "%s"' % (related.opts.verbose_name, new_rel_obj))
|
||||
self.new_rel_objs.append(new_rel_obj)
|
||||
else:
|
||||
for f in related.opts.fields:
|
||||
if not f.primary_key and f != related.field and str(getattr(old_rel_obj, f.attname)) != str(getattr(new_rel_obj, f.attname)):
|
||||
self.fields_changed.append('%s for %s "%s"' % (f.verbose_name, related.opts.verbose_name, new_rel_obj))
|
||||
|
||||
|
||||
if not old_rel_obj:
|
||||
self.new_rel_objs.append(new_rel_obj)
|
||||
|
||||
# Save many-to-many objects.
|
||||
for f in related.opts.many_to_many:
|
||||
if child_follow.get(f.name, None) and not f.rel.edit_inline:
|
||||
|
Loading…
x
Reference in New Issue
Block a user