【发布时间】:2016-04-12 00:09:50
【问题描述】:
我想用django-modeltranslation 翻译我的模型字段的内容。
当我运行其中之一时:
python manage.py makemigrations
python manage.py runserver
我得到 ImportError: cannot import name 'Constraint'
这是'makemigrations'的追溯
Traceback (most recent call last):
File "manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/home/mat/Desktop/python/pmm/venv/lib/python3.4/site-packages/django/core/management/__init__.py", line 350, in execute_from_command_line
utility.execute()
File "/home/mat/Desktop/python/pmm/venv/lib/python3.4/site-packages/django/core/management/__init__.py", line 324, in execute
django.setup()
File "/home/mat/Desktop/python/pmm/venv/lib/python3.4/site-packages/django/__init__.py", line 18, in setup
apps.populate(settings.INSTALLED_APPS)
File "/home/mat/Desktop/python/pmm/venv/lib/python3.4/site-packages/django/apps/registry.py", line 115, in populate
app_config.ready()
File "/home/mat/Desktop/python/pmm/venv/lib/python3.4/site-packages/django/contrib/admin/apps.py", line 22, in ready
self.module.autodiscover()
File "/home/mat/Desktop/python/pmm/venv/lib/python3.4/site-packages/django/contrib/admin/__init__.py", line 26, in autodiscover
autodiscover_modules('admin', register_to=site)
File "/home/mat/Desktop/python/pmm/venv/lib/python3.4/site-packages/django/utils/module_loading.py", line 50, in autodiscover_modules
import_module('%s.%s' % (app_config.name, module_to_search))
File "/home/mat/Desktop/python/pmm/venv/lib/python3.4/importlib/__init__.py", line 109, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 2254, in _gcd_import
File "<frozen importlib._bootstrap>", line 2237, in _find_and_load
File "<frozen importlib._bootstrap>", line 2226, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 1200, in _load_unlocked
File "<frozen importlib._bootstrap>", line 1129, in _exec
File "<frozen importlib._bootstrap>", line 1471, in exec_module
File "<frozen importlib._bootstrap>", line 321, in _call_with_frames_removed
File "/home/mat/Desktop/python/pmm/venv/lib/python3.4/site-packages/modeltranslation/admin.py", line 20, in <module>
from modeltranslation.translator import translator
File "/home/mat/Desktop/python/pmm/venv/lib/python3.4/site-packages/modeltranslation/translator.py", line 12, in <module>
from modeltranslation.manager import (MultilingualManager, MultilingualQuerysetManager,
File "/home/mat/Desktop/python/pmm/venv/lib/python3.4/site-packages/modeltranslation/manager.py", line 19, in <module>
from django.db.models.sql.where import Constraint
ImportError: cannot import name 'Constraint'
我使用 django1.9 和最新的 django-modeltranslation。
如果您不能帮我解决错误,请推荐任何其他模型翻译应用程序。
我遇到过一些:
但它们似乎不再受支持。您知道这些是否可行,或者您是否知道任何其他可行的解决方案?
如果这很重要,我必须承认我使用django-rosette
【问题讨论】:
-
我认为这是由于与 Django 1.9 不兼容造成的。过去,当有更新的 Django 版本时,我在使用这类软件包时遇到过问题。也许您对确实需要更新模型的库有更好的运气。您可以在此处查看替代方案:djangopackages.com/grids/g/model-translation 从最推荐到最少排序。
标签: python django django-models internationalization translation