簡體   English   中英

在子類中使用主類的屬性?

[英]Use main class' properties in subclass?

樣品:

from django.db import models


class BaseModel(models.Model):
    CHOICES = ((0, 'nope'),
               (1, 'yep'),)
    # ...


class P(BaseModel):
    p = models.SmallIntegerField(default=1, choices=BaseModel.CHOICES)

如果我只使用BaseModel則不必繼承BaseModel.CHOICES但是我必須繼承它,因為還有其他列。

如何讓P繼承CHOICES屬性而不是使用其父親的CHOICES

在您的示例中, p不是繼承字段,因此它無法“繼承” BaseModel任何BaseModel P (子類) 繼承CHOICESBaseModel但其中場點p定義的P類不存在(這只會存在結束之后class的語句體),所以你不能引用P.CHOICES在此時,由於在P類語句的主體中未定義名稱CHOICES ,因此您也不能引用它。 因此,基本上,您的摘錄是簡單明了的簡單解決方案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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