我很好奇如何动态更新Flask-Admin列表。 我可以使用_handle_view切换各种设置,但更改column_lists和filter_lists似乎不是一个选项。 示例视图:
class MyView(sqla.ModelView): column_list = ['first_name', 'last_name', 'phone', 'email'] column_searchable_list = ['first_name', 'last_name', 'phone',email'] column_filters = ['first_name', 'last_name', 'email'] can_create = Truedef is_accessible(self): if current_user.is_authenticated: return current_user.is_admin or current_user.has_permission('staff') def inaccessible_callback(self, name, **kwargs): flash('Authentication Required') return redirect(url_for('main.index')) def _handle_view(self, name, **kwargs): if not current_user.is_admin: self.can_create = False self.column_filters = ['first_name']
上面的视图改变了create选项(或flask-admin中的delete / edit / boolean选项),但_handle_view不会覆盖任何列表选项,如column_filters或column_list。至少据我所知。
任何人都有这方面的经验或能指出我正确的方向吗?