[英]How should I build this Django model to do what I want
這是我以前做過的(但意識到您顯然無法按此順序進行:
class MasterAdmin(models.Model):
"""
A permanent admin (one per Account) that shouldn't be deleted.
"""
admin = models.OneToOneField(AccountAdmin)
class Account(models.Model):
"""
A top-level account in the system.
"""
masteradmin = models.OneToOneField(MasterAdmin)
class AccountAdmin(models.Model):
"""
An Account admin that can be deleted. This includes limited permissions.
"""
account = models.ForeignKey(Account)
我想您可以從示例中看到我想做什么。 我想要一個MasterAccountAdmin,它共享AccountAdmin中的屬性。 目的是讓人們可以刪除AccountAdmin,而不是MasterAccountAdmin。 我不想在AccountAdmin上擁有一個名為“ master = models.BooleanField()”的屬性。
顯然,此示例無法正常工作,因為MasterAdmin在創建AccountAdmin之前就已對其進行引用,但我想展示自己想要實現的目標。 我在想這一切錯嗎?
為什么不只將is_master設置為AccountAdmin的屬性,然后重寫delete()方法以確保is_master不為真?
如果您有前向參考,請使用引號。
admin = models.OneToOneField('AccountAdmin')
請參閱文檔 。
如果需要在尚未定義的模型上創建關系,則可以使用模型的名稱,而不是模型對象本身...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.