我正在使用flask appbuilde构建一个web应用程序,并在下面的问题上坚持了一周。
在文档中,说明看起来非常简单:
class MyView(ModelView):
datamodel = SQLAInterface(MyModel)
validators_columns = {
'my_field1':[EqualTo('my_field2', message=gettext('fields must match'))]
}然而,当我准确地实现这一点时,在UI上,即使输入是正确的,它也会显示“无效输入”,从而阻碍表单提交。
我的代码(views.py):
class DelModelView(ModelView):
datamodel = SQLAInterface(Dell)
base_filters = [['cap_id', EqualTo, get_user]] #current user
list_columns = ["cap_id", "s_code", "s_name", "sos", "date_of_change"]
#base_order = ("cap_id", "asc")
validators_columns = {
'cap_id':[FilterEqualFunction(get_user, message=_('fields must match'))]
}
def get_user():
return g.user.username我想添加一个验证,以检查是否在添加新条目cap_id ==用户名。
我是不是漏掉了什么环节?我尝试了多种解决方案,但似乎都不起作用。
任何帮助都将不胜感激!
发布于 2019-11-01 21:01:57
我通过执行以下操作设法解决了这个问题:
我从add_coloumns中删除了cap_id。我使用默认值current_user预先填充了它,现在它工作得很好。耶!!
https://stackoverflow.com/questions/58610943
复制相似问题