django modeltranslation удаляет данные

у меня странные проблемы с переводом полей django-eav с помощью перевод модели. Я хочу перевести поле EnumValue value. Код в translations.py Вот

class EnumValueTranslationOptions(TranslationOptions):
    fields = ('value', )

translator.register(EnumValue, EnumValueTranslationOptions)

Этот value находится в eav/models.py:

class EnumValue(models.Model):
     value = models.CharField(_(u"value"), db_index=True,
                             unique=True, max_length=50)
     icon = models.ImageField(upload_to='enumvalue_icons/',blank=True,null=True, max_length=300, verbose_name=_('Icon'))

Проблема в том, что у меня уже есть много EnumValues ​​в базе данных. Когда я пишу этот код перевода и выполняю миграцию, старые значения просто исчезают. Объекты все еще существуют с другими полями, такими как icon, но значения пусты. Если я пытаюсь добавить значение, которое существовало ранее, мне говорят: значение уже существует. Если я прокомментирую код перевода и выполню миграцию, старые значения вернутся на свои места. Почему это происходит?


person Mažas    schedule 26.02.2016    source источник
comment
Посмотрите файл миграции и структуру sql измененной базы данных. Переводы модели AFAIK хранят значения полей в другой таблице.   -  person Visgean Skeloru    schedule 26.02.2016
comment
Я тоже так думаю, тогда как я могу скопировать эти значения с помощью django?   -  person Mažas    schedule 26.02.2016
comment
См. первый ответ здесь: stackoverflow.com/questions/48440899/   -  person timthelion    schedule 06.08.2018