1

我在用模型翻译翻译django-eav字段时遇到了奇怪的麻烦。我想翻译 EnumValue 字段。translations.py 中的代码 这里是value

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

translator.register(EnumValue, EnumValueTranslationOptions)

在eav value/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,但值为空。如果我尝试添加以前存在的价值,它会说:价值已经存在。如果我评论翻译代码并进行迁移,旧值就会恢复原状。为什么会这样?

4

0 回答 0