Задание поля первичного ключа модели Django для перевода с помощью django-modeltranslation

Я искал в readthedocs.io, но не нашел решения.

я использую django-modeltranslation перевести мои модели в мой проект Django.

Сейчас я пытаюсь перевести модель, которая имеет только одно поле, это первичный ключ.

models.py:

class Gender(models.Model):
    name = models.CharField(max_length=50, primary_key=True)

    def __str__(self):
        return self.name

translation.py:

class GenderTranslationOptions(TranslationOptions):
    fields = ('name',)


translator.register(Gender, GenderTranslationOptions)

Бег

python manage.py makemigrations

У меня следующая ошибка:

SystemCheckError: System check identified some issues:

ERRORS:
experiments.Gender.name_en: (fields.E007) Primary keys must not have null=True.
    HINT: Set null=False on the field, or remove primary_key=True argument.
experiments.Gender.name_pt_br: (fields.E007) Primary keys must not have null=True.
    HINT: Set null=False on the field, or remove primary_key=True argument.

Похоже, он пытается создать name_en а также name_pt_br поля в качестве первичных ключей, что это не так, потому что только name поле должно быть первичным ключом. Что мы можем сделать в таком случае? Документы не относятся ни к созданию этих полей вручную, ни к способу определения атрибутов полей в translation.pyПо крайней мере, пока я не узнаю от них.

0 ответов

Другие вопросы по тегам