哪种是从 strftime 中翻译消息的最佳/最简单的方法,例如"time data '2012' does not match format '%d.%m.%Y'"
or "day is out of range for month"
?
我问是因为我已经用 Flask、Flask-WTForms 和 DateField 类型的字段编写了一个应用程序。对于其他消息,我使用了 Flask-Babel/gettext,但此错误消息似乎直接来自不使用 gettext 的 strftime。
谢谢!
2012-07-24:添加一些示例代码(请尝试使用类似“2012-2-30”的日期):
from flask import Flask, render_template
from flask.ext.wtf import Form, DateField
class DateForm(Form):
date = DateField(u"Date")
DEBUG = True
SECRET_KEY = 'secret'
app = Flask(__name__)
app.config.from_object(__name__)
@app.route("/", methods=("GET", "POST",))
def index():
form = DateForm()
if form.validate_on_submit():
pass
return render_template("simple.html", form=form)
if __name__ == "__main__":
app.run()
模板“simple.html”:
<!DOCTYPE html>
<html>
<body>
<form method="POST" enctype="multipart/form-data">
{% if form.date.errors %}
{{ form.errors }}
{% endif %}
{{ form.hidden_tag() }}
{{ form.date.label }}
{{ form.date|safe }}
<input type="submit" value="Submit">
</form>
</body>
</html>