В нем используется pyramid_simpleform и formencode
Там есть форма регистрации
Не могу понять как локализировать ошибки валидаторов из formencode. Чтобы при отправке формы с незаполненным полем оно ругалось, скажем, на русском.
formencode.api.set_stdtranslation(domain=”FormEncode”, languages=)
не помогает или я его не туда вставляю. Он работает только когда библиотека используется отдельно от pyramid.
Варианты со State object наверное не то, что нужно, так как внутри formencode уже есть перевод этих строк и его нужно как-то активировать.
Есть конечно вариант явной перезаписи всех сообщений при определении схемы, но этот вариант кажется мне каким-то “неправильным”.
class EmailForm(formencode.Schema):
allow_extra_fields = True
filter_extra_fields = True
email = formencode.validators.Email(not_empty=True,
messages = {
'empty': _('Please enter an email address'),
'noAt': _('An email address must contain a single @'),
'badUsername': _('The username portion of the email address is
invalid (the portion before the @: %(username)s)'),
'socketError': _('An error occured when trying to connect to the
server: %(error)s'),
'badDomain': _('The domain portion of the email address is invalid
(the portion after the @: %(domain)s)'),
'domainDoesNotExist': _('The domain of the email address does not
exist (the portion after the @: %(domain)s)'),
})