我对Django有以下问题。
class UserProfile(Model):
inventory = models.M2M(InventoryItem)
class InventoryItem(Model):
item = GenericForeignKey()
class Equipment(Model):
base = GenericForeignKey()
每个用户都可以拥有多个项目。库存项目可以指向设备,材料等,但在这种情况下,它指向设备模型。装备模型与武器或装甲或附件有关系。
我需要从用户的广告资源中删除特定项目。
UserProfile.objects.get(pk=1).inventory.objects.all()[0].delete()
**这也会删除不相关的设备和武器/装甲/配件对象。 **
我已经在所有外键上添加了on_delete = DO_NOTHING,但我没有在GenericForeignKeys上看到这样的选项。解决方案是什么?
答案 0 :(得分:1)
UserProfile.objects.get(PK = 1).delete()
看起来您要删除UserProfile,而不是特定项