【发布时间】:2013-01-15 23:36:07
【问题描述】:
我正在使用 Flask 和 pyMongo 开发一个 Web 应用程序,鉴于新的 mongodb 支持,我最近开始集成 Flask-Admin 模块 (1.0.4)。
使用 ModelViews 时一切顺利,但在子类化 BaseView 时,我根本无法正常工作。
这是我的设置:
user_view = Admin(app, name='User stuff', url="/user", endpoint="user")
class ProfileForm(wtf.Form):
username = wtf.TextField('Username', [wtf.Required()])
name = wtf.TextField('Name', [wtf.Required()])
class Profile(BaseView):
@expose('/', methods=('GET', 'POST'))
def profile(self):
user = User(uid) # gets the user's data from DB
form = ProfileForm(request.form, obj=user)
if form.validate_on_submit():
data = form.data
user.set(**data)
user.save()
flash("Your profile has been saved")
else:
flash("form did not validate on submit")
return self.render('user/profile.html', form=form, data=user)
user_view.add_view(Profile(name='Profile', url='profile'))
提交表单时,wtforms 不报告任何错误(除非有任何错误)但验证不会返回到我的配置文件视图(else: 分支始终执行)
尽管彻底扫描了烧瓶管理文档、源代码和示例,但我找不到任何方法来完成这项工作。
谁能建议我如何修复我的代码,或解决这个问题?
【问题讨论】:
标签: python flask flask-admin