Fixed #11116 -- Corrected the deletion of proxy objects. Thanks to Samuel Adam for the fix.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@10824 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Russell Keith-Magee 2009-05-19 13:42:38 +00:00
parent b9b9ca334e
commit 2e24596001
2 changed files with 10 additions and 1 deletions

View File

@ -538,7 +538,7 @@ class Model(object):
# traversing to the most remote parent classes -- those with no parents
# themselves -- and then adding those instances to the collection. That
# will include all the child instances down to "self".
parent_stack = self._meta.parents.values()
parent_stack = [p for p in self._meta.parents.values() if p is not None]
while parent_stack:
link = parent_stack.pop()
parent_obj = getattr(self, link.name)

View File

@ -276,6 +276,15 @@ True
>>> UserProxyProxy.objects.all()
[<UserProxyProxy: Bruce>]
# Proxy objects can be deleted
>>> u2 = UserProxy.objects.create(name='George')
>>> UserProxy.objects.all()
[<UserProxy: Bruce>, <UserProxy: George>]
>>> u2.delete()
>>> UserProxy.objects.all()
[<UserProxy: Bruce>]
# We can still use `select_related()` to include related models in our querysets.
>>> country = Country.objects.create(name='Australia')
>>> state = State.objects.create(name='New South Wales', country=country)