检查外键关系

时间:2013-08-27 08:36:24

标签: django foreign-keys

我有以下类的对象实例

class Keyword(models.Model):
    disabled = models.BooleanField(default=False)

现在,我想将'disabled'值更改为True,但前提是没有其他对象具有ForeignKey或ManyToMany关系中的关键字。

删除对象时,也会删除将其作为外键关系的所有对象。从管理界面删除对象时,可以显示以这种方式删除的其他对象。很明显,有一种方法可以检测对象是否以这种方式相互依赖。

我如何自己做这样的检查?我意识到我可以做这样的事情

k = Keyword.objects.get(pk=1)
if len(k.whatever_set.all()) == 0:
    k.disabled = True
    k.save()

问题是很多对象依赖于这个关键字类,所以它会很混乱。

0 个答案:

没有答案