【发布时间】:2015-02-09 16:08:51
【问题描述】:
我正在为多语言网站使用 django 模型翻译。
语言后备在直接读取属性时效果很好。 例如,如果当前语言是德语并且我打印 object.title,如果未定义德语标题,我将看到英文标题。
我希望回退也适用于查询,但事实并非如此。 事实上,如果我做类似的事情
results = MyModel.objects.filter(title = 'hello')
如果未设置德语标题,这将不会得到任何结果,而我希望它返回带有英文标题“hello”的对象。
我怎样才能做到这一点?
提前致谢。
【问题讨论】:
-
当然,后备语言部分解释了如何设置后备顺序。如文档中所述,它在访问字段或使用 values() 时有效。问题是使用查询集进行过滤时回退不适用。文档中没有任何关于这种需求的内容,所以我问是否有办法实现这一点。
-
另外,MODELTRANSLATION_AUTO_POPULATE 设置似乎不起作用。我将其设置为 true,但是使用 TranslationModelForm 保存对象时未填充翻译字段:(
-
感谢提问,我也有同样的问题!在文档中也找不到任何内容。你找到解决这个问题的方法了吗?
标签: python django internationalization django-modeltranslation