Django: Рабочий сайт на многих языках

Я хочу выполнить сайт статьи на нескольких языках, я уже перевел строки перевода, таким образом, мои шаблоны готовы. У меня только есть вопросы, как сохранить статьи на многих языках? Я должен создать базу данных для каждого перевода, или он работает другим способом?

Если у меня есть, например, эта базовая модель:

class Article(models.Model):
    models.TextField()

И хотите хранить данные на многих языках, как я делаю это? Как организовать перенаправления между одной статьей о различных языках

5
задан Oleg Tarasenko 31 December 2009 в 07:07
поделиться

3 ответа

Одним из простых подходов к этой проблеме является добавление поля "язык" в каждой модели, которое идентифицирует язык, используемый для каждой записи. Похоже, таким подходом пользуется django-pluggable-model-i18n.

Другой подход заключается в использовании метаклассов Python для идентификации полей для перевода, как это используется в django-translate и django-transmeta.

Есть еще несколько проектов, но многие из них кажутся заброшенными или менее качественными. Джанго-трансмета всегда казалась мне самой интересной.

Edit: Мухук только что написал отличную статью, в которой он сегодня рассматривает различные переводческие проекты: http://www.muhuk.com/2010/01/dynamic-translation-apps-for-django/

6
ответ дан 14 December 2019 в 08:52
поделиться

Есть также: django-multilingual

1
ответ дан 14 December 2019 в 08:52
поделиться

Посмотрите, как люди на django-cms решили эту проблему - вы также можете запачкать руки и извлечь части кода, отвечающие за красивые многоязычные urls (например, url http://site.com/en-us/some_view/ корректно маршрутизирует на some_view/ и устанавливает request.LANGUAGE_CODE на en-us).

0
ответ дан 14 December 2019 в 08:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: