Flask Admin _handle_view设置过滤器/列

时间:2016-05-18 20:23:28

标签: flask flask-admin

我很好奇如何动态更新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 = True

    def 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。至少据我所知。

任何人都有这方面的经验或能指出我正确的方向吗?

0 个答案:

没有答案