Джанго Нани и модели наследования - PullRequest
2 голосов
/ 05 декабря 2011

Я использую Django nani http://readthedocs.org/docs/django-nani/en/latest/ и хочу определить две модели (одна наследует другую):

class ItemBase(TranslatableModel):
    translations = TranslatedFields(
        name = models.CharField(max_length=40)
    )
    slug = models.SlugField(unique=True, max_length=40)
    description = models.CharField(max_length=1000)
    worth = models.PositiveIntegerField()

class EquipBase(ItemBase):
    def __init__(self, *args, **kwargs):
        super(EquipBase, self).__init__(*args, **kwargs)

    level = models.PositiveSmallIntegerField()

Однако при использовании syncdb я получаю следующую ошибку.

django.core.exceptions.ImproperlyConfigured: No TranslatedFields found on <class 'main.world.items.models.EquipBase'>, subclasses of TranslatableModel must define TranslatedFields.

Какое решение?

1 Ответ

0 голосов
/ 03 ноября 2016

Вы должны добавить « translations » к EquipBase, встроенному в ItemBase, и использовать модели. Модель в качестве суперкласса для ItemBase:

class ItemBase(models.Model):
    slug = models.SlugField(unique=True, max_length=40)
    description = models.CharField(max_length=1000)
    worth = models.PositiveIntegerField()



class EquipBase(ItemBase):
    translations = TranslatedFields(
        name = models.CharField(max_length=40)
    )

    def __init__(self, *args, **kwargs):
        super(EquipBase, self).__init__(*args, **kwargs)

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