Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python django modeltranslation删除数据_Python_Django_Django Modeltranslation - Fatal编程技术网

Python django modeltranslation删除数据

Python django modeltranslation删除数据,python,django,django-modeltranslation,Python,Django,Django Modeltranslation,我在翻译字段时遇到了奇怪的问题。我想翻译EnumValue字段值。translations.py中的代码 class EnumValueTranslationOptions(TranslationOptions): fields = ('value', ) translator.register(EnumValue, EnumValueTranslationOptions) 值在eav/models.py中: class EnumValue(models.Model): v

我在翻译字段时遇到了奇怪的问题。我想翻译EnumValue字段
。translations.py中的代码

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

translator.register(EnumValue, EnumValueTranslationOptions)
值在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'))

问题是,我在数据库中已经有很多枚举值。当我编写这个翻译代码并进行迁移时,旧的值就消失了。对象仍然存在,还有其他字段,如
图标
,但值为空。如果我尝试添加以前存在的值,它会说:值已经存在。如果我对翻译代码进行注释并进行迁移,旧的值就会恢复原状。为什么会发生这种情况?

请查看迁移文件和修改后数据库的sql结构。AFAIK模型转换将字段值存储在不同的表中。我也这么认为,那么如何使用django复制这些值呢?请参见这里的第一个答案:查看迁移文件和修改后数据库的sql结构。AFAIK模型转换将字段值存储在不同的表中。我也这么认为,那么如何使用django复制这些值呢?请参见这里的第一个答案: