【发布时间】:2013-08-21 21:54:51
【问题描述】:
我正在尝试在 Pyramid 应用程序上使用带有 SQLAlchemy 扩展的 WTForms。
我已经完成了:
from wtforms import Form, TextField,TextAreaField, validators
from wtforms.ext.sqlalchemy.fields import QuerySelectField
from app.models import DBSession
from app.models import ParentModel
class NewChild(Form):
title = TextField('Title:', [validators.Required()])
intro = TextAreaField('Introduction:')
body = TextAreaField('Body:')
parent = QuerySelectField(query_factory=DBSession().query(ParentModel).all)
DBSession 定义为
DBSession = scoped_session(sessionmaker(extension=ZopeTransactionExtension()))
查询似乎有效,但我的模板中的显示正在阅读
<app.models.ParentModel object at 0x9xxx>
或类似的。我做错了什么?
【问题讨论】:
-
ParentModel 是一个类吗?也许你应该尝试 ParentModel.name 或你想要显示的东西
-
我试过...事实上,我有一个类方法
DBSession.query(ParentModel).order_by(sa.desc(ParentModel.title)),当在模板中作为直接变量调用时显示标题(即variable = ParentModel.all())。不过,这不会改变我在表单上看到的输出。 -
你能给我们看看你的模板表格吗?
标签: sqlalchemy pyramid wtforms