Всем привет и все такое
При переходе на 1,7 возникла странная ошибка. В доках ничего не смог найти по решению, так что возможно - собственная криворукость, но не получается все же найтись.
Итак, есть модель (в сокращении)
class Article(models.Model):
name =
annotate =
big_text = models.TextField(verbose_name=_(u'Весь большой текст'))
Есть файл translation.py в папке pages:
from modeltranslation.translator import translator, TranslationOptions
from pages.models import Article
class ArticleTranslationOptions(TranslationOptions):
fields = ('name', 'annotate', 'big_text')
translator.register(Article, ArticleTranslationOptions)
pages/admin.py
from pages.models import Article
admin.site.register(Article)
В таком виде, модель для перевода считается зарегистрированной, на самом сайте переводы подключаются, в админке появляются поля под перевод в виде один за другим в админке:

Но хочется же, чтобы все было красиво во вкладках.
Читаем мануал и преобразовываем admin.py в такой вид:
from django import forms
from django.contrib import admin
from modeltranslation.admin import TranslationAdmin
from pages.models import Article
class ArticleAdmin(TranslationAdmin):
pass
class Media:
js = (
'http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js',
'http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.2/jquery-ui.min.js',
'modeltranslation/js/tabbed_translation_fields.js',
)
css = {
'screen': ('modeltranslation/css/tabbed_translation_fields.css',),
}
admin.site.register(Article, ArticleAdmin)
И тут же получаем такое сообщение в плечи:
Traceback (most recent call last):
File "manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 385, in execute_from_command_line
utility.execute()
File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 354, in execute
django.setup()
File "/usr/local/lib/python2.7/dist-packages/django/__init__.py", line 21, in setup
apps.populate(settings.INSTALLED_APPS)
File "/usr/local/lib/python2.7/dist-packages/django/apps/registry.py", line 115, in populate
app_config.ready()
File "/usr/local/lib/python2.7/dist-packages/django/contrib/admin/apps.py", line 22, in ready
self.module.autodiscover()
File "/usr/local/lib/python2.7/dist-packages/django/contrib/admin/__init__.py", line 23, in autodiscover
autodiscover_modules('admin', register_to=site)
File "/usr/local/lib/python2.7/dist-packages/django/utils/module_loading.py", line 74, in autodiscover_modules
import_module('%s.%s' % (app_config.name, module_to_search))
File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
__import__(name)
File "/home/ski/Development/DJ17/tr_site/pages/admin.py", line 26, in <module>
admin.site.register(Article, ArticleAdmin)
File "/usr/local/lib/python2.7/dist-packages/django/contrib/admin/sites.py", line 102, in register
self._registry[model] = admin_class(model, self)
File "/home/ski/Development/DJ17/tr_site/modeltranslation/admin.py", line 239, in __init__
super(TranslationAdmin, self).__init__(*args, **kwargs)
File "/home/ski/Development/DJ17/tr_site/modeltranslation/admin.py", line 28, in __init__
self.trans_opts = translator.get_options_for_model(self.model)
File "/home/ski/Development/DJ17/tr_site/modeltranslation/translator.py", line 519, in get_options_for_model
'translation' % model.__name__)
modeltranslation.translator.NotRegistered: The model "Article" is not registered for translation
Что с этим можно сделать? django-modeltranslation последний, обновленный. При 1,6 такой фигни не было!!! (с)