如何在can_create上分开访问Flask-Admin?

时间:2019-04-02 08:25:56

标签: python flask flask-sqlalchemy flask-admin

我想在Flask-Admin方法功能上有所作为。

但是对于如何在用户角色之间设置条件感到困惑,让我们在 can_create 功能中说。

这是我的模型视图的摘录:

class UserModelView(sqla.ModelView):

    if current_user.has_role == 'superuser':
        can_create = True
    elif current_user.has_role == 'client':
        can_create = False

但是我得到的错误很少,而且我也尝试了不同的方法,如下所示:

class UserModelView(sqla.ModelView):
    def is_visible(self):
        if current_user.has_role == 'superuser':
            can_create = True
        elif current_user.has_role == 'client':
            can_create = False

并且我还尝试了BaseModelView类上的其他方法,但是仍然无法按我的意愿工作。

所以..是否可以在该功能中提供条件。.

1 个答案:

答案 0 :(得分:0)

我根据@gitter的建议遵循此solution,并通过 can_create 功能工作,谢谢@gitter。

但不幸的是,它在 form_excluded_columns

之类的其他条件下不起作用

编辑: 对于 BaseModelView 中的方法(即: can_create 的类I,遵循solution

但是对于 form_excluded_columns 之类的其他方法,我正在使用this way,并且this way也可以使用。