Поддерживает ли Flask-Login роли?

Если нет, есть ли проекты, которые добавили эту функцию во Flask-Login? В противном случае переход с Flask-Login на Flask-User может показаться немного сложным. В противном случае, есть ли какое-то направление для перехода с Flask-Login на Flask-User?

github.com/raddevon/flask-permissions
Mad Wombat 12.09.2018 00:41

К сожалению, этот проект больше не поддерживается, и после установки Flask-Permissions через pip он не распознает предлагаемый импорт страницы Github.

user1995565 12.09.2018 04:02

вы можете проверить Flask Security, который поддерживает роли

gittert 12.09.2018 15:53
Новые приложения с использованием ChatGPT
Новые приложения с использованием ChatGPT
Я собираюсь вернуться к теме, которую уже освещал ранее, - чатгпт.
Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Kubernetes - это портативная, расширяемая платформа с открытым исходным кодом для управления контейнерными рабочими нагрузками и сервисами, которая...
Другой маршрут в Flask Python
Другой маршрут в Flask Python
Flask - это фреймворк, который поддерживает веб-приложения. В этой статье я покажу, как мы можем использовать @app .route в flask, чтобы иметь другую...
4
3
2 365
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Опять же, отвечая на мой собственный вопрос здесь для всех, кому интересно, как можно добавить функцию обработки нескольких ролей, все еще используя Flask-Login. Я создал следующий декоратор, который просто проверяет current_user.role, чтобы узнать, является ли он «Admin». Вы также должны проверить то же самое, когда разрешаете пользователю войти в систему, в зависимости от того, входит ли он в систему с правами администратора или пользовательской панели.

from functools import wraps

def admin_required(f):
@wraps(f)
def wrap(*args, **kwargs):
    if current_user.role == "Admin":
        return f(*args, **kwargs)
    else:
        flash("You need to be an admin to view this page.")
        return redirect(url_for('index'))

return wrap

как добавить роль к объекту пользователя. Я пробовал роль жесткого кодирования во время создания объекта User, чтобы узнать, могу ли я получить его от current_user. но я получаю - AttributeError: объект "Пользователь" не имеет атрибута "роль"

rakesh 19.08.2020 05:59

Другие вопросы по теме