Ошибки формы Django переводят - PullRequest
2 голосов
/ 18 февраля 2011

Привет, я делаю простой интерфейс, чтобы добавить сообщение с именем автора. У него есть два поля: одно с именем, второе с сообщением. Моя функция сheks form.is_valid (), если это правда, элемент добавляется в базу данных, иначе я отображаю шаблон с формой ошибки и сообщением «Это поле обязательно для заполнения» appearead. Круто, что так мало строк кода приводят к такому результату. Но мои пользователи говорят не на английском языке, и они не понимают «Это поле обязательно для заполнения». сообщение. Как я могу изменить это сообщение, продолжая использовать form.as_table?

1 Ответ

6 голосов
/ 19 марта 2012

Django поставляется со встроенной интернационализацией, см. i18n документы . В случае сообщений об ошибках формы все они помечаются для перевода и переводятся уже в Django. Все, что вам нужно сделать, это убедиться, что Django выбирает правильный язык для пользователя (см. Как Django обнаруживает предпочтения языка ). Если все ваши пользователи говорят (например) по-немецки, вы можете просто указать это в настройках:

gettext = lambda x: x

LANGUAGE_CODE = 'de_DE'
LANGUAGES = (
    ('de', gettext('German')),
)
...