Множественное наследование с Джанго - PullRequest
2 голосов
/ 06 февраля 2011

Я использую 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 голосов
/ 06 февраля 2011

Как VersionAdmin, так и ModerationAdmin, по-видимому, используют «совместную супер» функцию Python. Поэтому я бы попытался использовать множественное наследование:

class ItemAdmin(VersionAdmin, ModerationAdmin):
    pass

Если это не удалось, вы можете увидеть, работает ли он лучше в обратном порядке. Если это все равно не помогло, вам нужно изучить конкретную проблему и выяснить, почему кооперативный супер не работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...