2015-10-08 2 views
2

Я учусь использовать колбу. Я не могу сделать WTForms встроенные переводы работыWTForms l10n и i18n не работает

http://wtforms.readthedocs.org/en/latest/i18n.html#using-the-built-in-translations-provider

Вот мой класс Form

class MyBaseForm(Form): 
class Meta: 
    locales = ['es_ES', 'es'] 

class LoginAdminForm(MyBaseForm): 
    user = StringField('user', validators=[validators.InputRequired()]) 
    password = StringField('password', validators=[validators.InputRequired()]) 

Здесь маршрутная

app = Flask(__name__) 
app.config.from_object('config') 

@app.route('/admin', methods=['GET', 'POST']) 
def adminLogin(): 
    form = LoginAdminForm() 
    if form.validate_on_submit(): 
     return redirect('/index') #TODO: Redirect to actual admin menu 
    return render_template("adminLogin.html", title="Admin login",form=form) 

Вот конфиг

WTF_CSRF_ENABLED = True 
SECRET_KEY = 'you-will-never-guess' 

Вот adminLogin.html

{% extends "base.html" %} 
{% block content %} 
    <form action="" method="post" name="login"> 
    {{ form.hidden_tag() }} 
    <p> 
     Usuario: 
     {{ form.user }} 
     {% for error in form.password.errors %} 
     <span style="color: red;">[{{ error }}]</span> 
     {% endfor %}<br> 
     Ingrese Contraseña: 
     {{ form.password }} 
     {% for error in form.password.errors %} 
     <span style="color: red;">[{{ error }}]</span> 
     {% endfor %}<br> 
    </p> 
    <p><input type="submit" value="Acceder"></p> 
{% endblock %} 

base.html просто пустой HTML скелет Ошибки всегда выходят на английском языке. Я также попытался передать параметр в конструкторе не работает либо

form = LoginAdminForm(meta={'locales': ['en_US', 'en']}) 

EDIT: Через некоторое время играть вокруг я угробил склянки-WTForm и пошел с чистым WTForms. И тогда это сработало. Я предполагаю, что это ошибка на фляге-WTForm. Если я не получу ответа, я пойду с чистыми WTForms

ответ

0

Метод, который я использовал, работал только с WTForm NOT с флягой-WTForm. Я предполагаю, что это ошибка. Я не мог найти документацию об этом. Теперь я буду использовать чистую WTForm, поскольку, похоже, проблема решена.

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