我有这些模型。问题是,当我使用Django Admin删除一条狗记录时,相关的项圈记录没有被删除。Django - 关联OneToOne记录未被删除
我在Django 1.2上。我认为级联删除是默认的。它与Collar链接到传统表时存在问题?
非常感谢提前。
class Collar(models.Model):
serial_number = models.AutoField(primary_key=True, db_column='serial_number')
weight = models.CharField(max_length=10)
class Meta:
db_table = u'existing_table_from_before_django_was_born'
class Dog(models.Model):
size = models.CharField(max_length=10)
collar = models.OneToOneField(Collar,blank=True, null=True, editable=False)
谢谢。出于某种原因,我在思考着什么。 – Greg
因此,如果我重写删除方法以首先删除领圈记录,然后删除自己,我需要以某种方式将删除方法包装在一个事务中(或Django 1.2会自动执行该操作吗?)。我想避免所有领圈记录被删除但在Dog记录被删除之前发生错误的情况。 – Greg
https://docs.djangoproject.com/en/1.2/topics/db/transactions/#django-db-transaction-commit-on-success –