我想了解django多语言功能是如何工作的,我找到了this example
我所做的是创建了一个测试项目,并将其包含在settings.py
中在测试目录中,我有multilingual.py和models.py(可在上面的链接中找到)。
但是当我在shell中运行python manage.py时,我得到以下回溯:
>>> from test.models import Language
Traceback (most recent call last):
File "<console>", line 1, in ?
File "/opt/Project_Apr22/site/test/models.py", line 2, in ?
from multiling import MultilingualModel
ImportError: cannot import name MultilingualModel
如何解决这个问题?
答案 0 :(得分:0)
您确定从您认为自己的multiling
导入吗?
import multiling
print multiling.__file__
答案 1 :(得分:0)
不要使用模块名称'test',因为它与python的测试模块冲突。
答案 2 :(得分:0)
首先:哪个版本的django?
对我来说(django 1.2)你的代码会死,因为multiling.py
位于项目的根目录下。
不确定是django bug,多重bug还是两者都有bug。
在app_label
中添加MultilingualModel.Meta
后添加:
class MultilingualModel(models.Model):
# ...
class Meta:
app_label = 'foo'
abstract = True
一切正常。我在想这是Django的错误。你(或者我)应该报告......
答案 3 :(得分:0)
MultilingualModel显示错误,因为multiling是您尝试导入的另一个代码,请在您的目录中包含该代码然后尝试。