Python Flask Admin中的批处理编辑
我正在使用Flask Admin,我希望能够从列表视图一次更新多个字段。看起来我要找的是一个定制的动作 我能让它工作,但我怀疑不是以最好的方式。我想知道是否可以做得更多 例如,如果我正在更新表Python Flask Admin中的批处理编辑,python,python-2.7,flask,flask-sqlalchemy,flask-admin,Python,Python 2.7,Flask,Flask Sqlalchemy,Flask Admin,我正在使用Flask Admin,我希望能够从列表视图一次更新多个字段。看起来我要找的是一个定制的动作 我能让它工作,但我怀疑不是以最好的方式。我想知道是否可以做得更多 例如,如果我正在更新表cars中的所有行,使其具有tires=4,我现在所做的是: CarView类中的自定义操作收集要修改的行的ID、来自request.referer的回调url和tablenamecars,并返回render\u模板(mass\u update\u info.html),将这些作为参数 mass\u up
cars
中的所有行,使其具有tires=4
,我现在所做的是:
类中的自定义操作收集要修改的行的ID、来自CarView
的回调url和tablenamerequest.referer
,并返回cars
,将这些作为参数render\u模板(mass\u update\u info.html)
是一种html表单,用户在其中指定1)要更改的字段和2)要更改的值。提交时,表单使用此数据向特定视图(mass\u update\u info.html
)发布帖子(其他内容在此表单中作为隐藏字段传递)do\u mass\u update
使用发送给它的数据构造一个SQL查询字符串——整体而言,do\u mass\u update
——通过“update{}SET{}='{}',WHERE id in({})”.format(table,column,value,ids)
db.engine.execute()运行
- 用户被重定向到回调url
让我烦恼的是,我似乎没有使用任何SQLAlchemy,但(从新手的角度来看)它似乎都是基于模型对象的,例如,
User.query(…)
,而我只能作为字符串访问模型/表名。我可以从模型中获取某种标识符,将其传递,然后进行查找以检索另一侧的吗?听起来差不多。不过,我会使用动态查询生成器而不是字符串连接。请看这里: