Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Fixes #1816, #2243 -- Removed a stale remnant of pre-magic removal co…

…de in manipulators that modify m2m object that are edited inline. Thanks to dolemite@wuli.nu and coconutstudio@yahoo.com for the original reports, Tyson Tate for a clean test case, and Jay Parlar for helping out with a solution.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@3830 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
commit 175337605d087971306f69928d5db582aa4ece86 1 parent a64cb2e
@freakboy3742 freakboy3742 authored
Showing with 4 additions and 2 deletions.
  1. +4 −2 django/db/models/manipulators.py
View
6 django/db/models/manipulators.py
@@ -129,6 +129,7 @@ def save(self, new_data):
# TODO: Add to 'fields_changed'
expanded_data = DotExpandedDict(dict(new_data))
+ print expanded_data
# 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:
@@ -215,8 +216,9 @@ def save(self, new_data):
# 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:
- was_changed = getattr(new_rel_obj, 'set_%s' % f.name)(rel_new_data[f.attname])
- if self.change and was_changed:
+ print 'rel_new_data:',rel_new_data
+ setattr(new_rel_obj, f.name, f.rel.to.objects.filter(pk__in=rel_new_data[f.attname]))
+ if self.change:
self.fields_changed.append('%s for %s "%s"' % (f.verbose_name, related.opts.verbose_name, new_rel_obj))
# If, in the change stage, all of the core fields were blank and
Please sign in to comment.
Something went wrong with that request. Please try again.