我有以下类的对象实例
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()
问题是很多对象依赖于这个关键字类,所以它会很混乱。