2010-11-22 14 views
1

Django的文檔說:如果類在不同的文件中,如何擴展Django Meta類?

class CommonInfo(models.Model): 
    ... 
    class Meta: 
     abstract = True 
     ordering = ['name'] 

class Student(CommonInfo): 
    ... 
    class Meta(CommonInfo.Meta): 
     db_table = 'student_info' 

但我怎麼處理這個問題,如果CommonInfo和學生在不同的文件嗎?此刻,我的學生文件看起來像

from CommonInfo import CommonInfo 
class Student(CommonInfo): 
    ... 
    class Meta(CommonInfo.Meta): 
     db_table = 'student_info' 

但是,拋出「AttributeError錯誤:Type對象‘CommonInfo’有沒有屬性‘元’」

回答

2

Model使用元條從Meta內部類類的定義,所以它不能用這種方式進一步使用。將其定義爲一個單獨的類,並將其分配給Meta類屬性(如果您在別處需要它)。

+0

我以爲Django只剝離了非抽象模型類的Meta內部類。 – Erik 2012-04-25 19:29:18