Acesso baseado em função do administrador do balão - Modifique o acesso com base na função

Peguei o exemplo de autenticação Flask-Admin deaqui e mudou um pouco.

Adicionei o seguinte bloco à visualização abaixo, mas ele não mostra o botão de exportação. Eu esperava que ele adicionasse a opção de exportação às visualizações de administrador. Imprime---superuser para o console.

        if current_user.has_role('superuser'):
            can_export = True
            print ' ---- superuser '

Eu usei o recurso de exportação muitas vezes antes. Funcionará se eu colocar a declaraçãocan_export = True logo abaixoclass MyModelView(sqla.ModelView): Estou usando isso como um exemplo de controle de acesso à criação / edição / etc com base na função do usuário. Por exemplo, desejarei ter uma função somente leitura em que can_create = False, can_edit = False etc.

Alguém pode ajudar? Alguém pode me dizer o que estou fazendo de errado?

==

Esta é a visão inteira.

# Create customized model view class
class MyModelView(sqla.ModelView):

    def is_accessible(self):
        if not current_user.is_active or not current_user.is_authenticated:
            return False

        if current_user.has_role('superuser'):
            return True

        return False

    def _handle_view(self, name, **kwargs):
        """
        Override builtin _handle_view in order to redirect users when a view is not accessible.
        """
        if current_user.has_role('superuser'):
            can_export = True
            print ' ---- superuser '

        if not self.is_accessible():
            if current_user.is_authenticated:
                # permission denied
                abort(403)
            else:
                # login
                return redirect(url_for('security.login', next=request.url))

==

Para referência: coloquei todo o códigoaqui.

questionAnswers(1)

yourAnswerToTheQuestion