Проблема наследования разрешений в Django и Meta - PullRequest
1 голос
/ 24 марта 2011

Я понимаю, что Meta может наследоваться, если суперкласс имеет abstract = True, но не может наследоваться иначе. Это потому, что Django каким-то образом потребляет и удаляет класс Meta из конкретных классов? Я хотел бы сделать что-то, как в примере ниже, чтобы Derived мог получить свойства Meta из Base (в этом случае, чтобы наследовать разрешения как часть django-guardian).

Буду признателен за предложения о том, как этого добиться.

Ian

class Base(Model):
    class Meta:
        permissions = (("foo", "Allowed to do foo"),)

class Derived(Base):
    class Meta(Base.Meta): pass

Ответы [ 2 ]

4 голосов
/ 25 марта 2011
0 голосов
/ 04 декабря 2013

В моем случае явное наследование Meta не работало из-за юга.Смотрите этот билет .

django-admin.py syncdb --all исправил проблему.

...