Changeset 8128
- Timestamp:
- 07/27/08 20:32:46 (5 months ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
django/trunk/django/db/models/query.py
r8100 r8128 836 836 837 837 update_query = sql.UpdateQuery(cls, connection) 838 for field in cls._meta.fields:838 for field, model in cls._meta.get_fields_with_model(): 839 839 if (field.rel and field.null and field.rel.to in seen_objs and 840 840 filter(lambda f: f.column == field.column, 841 841 field.rel.to._meta.fields)): 842 update_query.clear_related(field, pk_list) 842 if model: 843 sql.UpdateQuery(model, connection).clear_related(field, 844 pk_list) 845 else: 846 update_query.clear_related(field, pk_list) 843 847 844 848 # Now delete the actual data. django/trunk/tests/regressiontests/model_inheritance_regress/models.py
r8061 r8128 53 53 name = models.CharField(max_length=10) 54 54 55 class SelfRefParent(models.Model): 56 parent_data = models.IntegerField() 57 self_data = models.ForeignKey('self', null=True) 55 58 59 class SelfRefChild(SelfRefParent): 60 child_data = models.IntegerField() 56 61 57 62 __test__ = {'API_TESTS':""" … … 183 188 [] 184 189 190 # Regression test for #7853 191 # If the parent class has a self-referential link, make sure that any updates 192 # to that link via the child update the right table. 193 194 >>> obj = SelfRefChild.objects.create(child_data=37, parent_data=42) 195 >>> obj.delete() 196 185 197 """}
