Django中的多重继承
我在做一个项目,使用的是Django框架。我想用几个应用程序,这些应用程序通过继承管理类来扩展管理后台。
我该怎么让这几个应用程序都能继承管理类呢?
from django.contrib import admin
from testing.models import *
from reversion.admin import VersionAdmin
from moderation.admin import ModerationAdmin
class ItemAdmin(VersionAdmin):
pass
admin.site.register(Item, ItemAdmin)
1 个回答
4
VersionAdmin和ModerationAdmin这两个东西看起来都在用Python的“协作超类”这个功能。所以我建议你可以试试用多重继承的方法:
class ItemAdmin(VersionAdmin, ModerationAdmin):
pass
如果这样不行,你可以试试把继承的顺序反过来。如果还是不行,那就需要仔细研究一下具体的问题,找出为什么协作超类不管用。