簡體   English   中英

我應該如何構建這個Django模型來做我想要的

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM