我正在尝试使用django,烧瓶,金字塔框架的FormAlchemy。使用SQLAlchemy == 0.7和FormAlchemy == 1.4.2。遵循在线提供的文档。但是面临一些奇怪的问题。设法得到解决方法,但不明白为什么渲染问题发生了。
将form = FieldSet(User).render()
传递给jinja2或mako渲染器后,自动生成的总html表单应在页面中呈现,不包括标记。但是,模板变量${form}
或{{ form }}
不会呈现为表单。相反,它们是纯文本!!
以下是观点:
def index():
import formalchemy
from models import User
fs = formalchemy.FieldSet(User)
#fs.rebind(with_prefix=True)
opts=[('Google','1'),('Yahoo','2'),('MSN','3')]
fs.configure(options=[
fs.name.label('Full Name'),
fs.email.dropdown(opts)
])
form = fs
return render_template('form.html', form=form)
这是模板:
{{form.render()}}
这是输出.. !!:
不应该是表格吗?!...
最新版本的FormAlchemy == 1.5.5中没有显示此问题...但是它存在另一个问题。 我使用的电子邮件字段选项是一个测试。 FormAlchemy == 1.5.5不支持或正确呈现选项选择字段....这就是我选择版本1.4.2的原因。
有人有任何建议吗?
答案 0 :(得分:-1)
尝试{{ form.render()|e }}
了解更多http://jinja.pocoo.org/docs/dev/templates/#working-with-manual-escaping