我在这里有这个代码:
class AdminModelView(ModelView):
def is_accessible(self):
column_searchable_list = ['username', 'email']
column_filters = ['admin', 'confirm email']
page_size = 50
if current_user.is_authenticated and not current_user.is_anonymous:
user = User.query.filter_by(username=current_user.username).first()
if user.admin == True:
return True
else:
return False
else:
return False
admin = Admin(app, template_mode='bootstrap3')
admin.add_view(AdminModelView(User, db.session))我很确定column_searchable_list应该增加一个搜索栏,但它没有。而且,即使我定义了column_filters,我仍然可以通过管理员以外的东西来过滤和确认电子邮件。我已经阅读了flask-admin的文档,我看不出有什么问题。这里我漏掉了什么?
发布于 2020-07-07 17:21:31
您将column_searchable_list, column_filters, page_size覆盖分配放在了错误的位置。
class AdminModelView(ModelView):
column_searchable_list = ['username', 'email']
column_filters = ['admin', 'confirm email']
page_size = 50
def is_accessible(self):
# only accessible if admin field is True
if current_user.is_authenticated and not current_user.is_anonymous:
return current_user.admin
return False
admin = Admin(app, template_mode='bootstrap3')
admin.add_view(AdminModelView(User, db.session))https://stackoverflow.com/questions/62750861
复制相似问题