2013-06-08 3 views
1

В настоящее время я использую django-transmeta, чтобы перевести некоторые поля модели, но теперь у меня есть большая проблема, поскольку это слишком ограничительно для меня.Перевести поля модели Django, не имея языка по умолчанию

В трансметате вы определяете язык по умолчанию, а затем вы позволяете пользователям добавлять дополнительные переводы из списка языков, на которые вы переводили. Но теперь мне нужно разрешить пользователю писать содержимое полей модели в нужные им языки (из определенного набора языков), не имея языка по умолчанию. Так, например, если пользователь из США, он заполнит английскую версию, в то время как испанский пользователь заполнит испанскую версию и, возможно, английский. Использование transmeta не позволяет мне это делать, поскольку язык по умолчанию всегда является обязательным, и поэтому оба должны будут заполнить испанскую или английскую версию, что не имеет смысла для этого сайта.

Попутно немного Я нашел еще две библиотеки Django, имеющие дело с переводами модели, которые были вызваны django-modeltranslation и django-rosetta. Знаете ли вы, если бы кто-нибудь из них позволил мне делать то, что мне нужно? Или есть ли лучший вариант для этого?

Спасибо!

ответ

0

Вы можете сделать это с помощью django-modeltranslation. Если исходное поле является необязательным (blank=True, null=True), поле перевода, созданное модельным переводом, также будет необязательным.

Кстати, django-rosetta обслуживает другую потребность. Он добавляет интерфейс для перевода статического контента (po-файлов) через интерфейс администратора.

+0

Привет @Dirk Eschler спасибо за ваше объяснение! Контейнер - это то, что если поле не является необязательным, вам необходимо ввести перевод языка по умолчанию. Нельзя заполнить один или несколько переводов, но не по умолчанию (если требуется поле). Пожалуйста, исправьте меня, если я ошибаюсь. Другое дело: при настройке 'django-modeltranslation' мне приходится сталкиваться со старой проблемой # 26 с v 0.6.1 и Django 1.5.1, и я создал новый вопрос http://stackoverflow.com/questions/17154187/django -admin-вопросы-с-с пустым переводными стоимостями-и уникальной правдой. Можете ли вы взглянуть на него? Благодаря! – Caumons

0

django-multilingual-ds9 не имеет каких-либо ограничений в отношении того, какие переводы вы можете иметь в базе данных.

+0

Спасибо за ваш ответ, но я попробую 'django-modeltranslation'. – Caumons

Смежные вопросы