如何在 Flask-Admin 中为 create/edit 表单字段设置固定值
How to set the fixed value for the create/edit form field in Flask-Admin
我正在使用 Flask-Admin 和 Flask-Security 编写网站。我想实现一个功能:只有admin角色的用户可以创建foo角色的用户。只有foo角色的用户才能创建bar角色的用户。
我试过 QueryAjaxModelLoader
:
form_ajax_refs = {
roles: QueryAjaxModelLoader("role", db.session, Role, fileds=["name"])
和form_choices
:
form_choices = {"roles": [(3, "foo"), ]}
这两种方法都没有解决问题。谁能给我一些建议?
起初,我使用on_model_change
来设置roles
字段的默认值。
然后,我使用form_args
和query_factory
来限制roles
字段的选择。
def filter_func():
return db.session.query(Role).filter_by(name="applicant")
form_args = {
"roles": {
"query_factory": filter_func
}
}
我正在使用 Flask-Admin 和 Flask-Security 编写网站。我想实现一个功能:只有admin角色的用户可以创建foo角色的用户。只有foo角色的用户才能创建bar角色的用户。
我试过 QueryAjaxModelLoader
:
form_ajax_refs = {
roles: QueryAjaxModelLoader("role", db.session, Role, fileds=["name"])
和form_choices
:
form_choices = {"roles": [(3, "foo"), ]}
这两种方法都没有解决问题。谁能给我一些建议?
起初,我使用on_model_change
来设置roles
字段的默认值。
然后,我使用form_args
和query_factory
来限制roles
字段的选择。
def filter_func():
return db.session.query(Role).filter_by(name="applicant")
form_args = {
"roles": {
"query_factory": filter_func
}
}