Атрибут is_anonymous
Атрибут is_anonymous принадлежит классу AnonymousUserMixin из модуля flask_login. Он представляет собой свойство, которое всегда возвращает True. Этот атрибут используется для проверки того, что текущий пользователь не прошёл аутентификацию. В отличие от обычного пользователя, где is_anonymous возвращает False, для анонимного пользователя этот атрибут гарантированно равен True.
Синтаксис
AnonymousUserMixin.is_anonymous
Пример
Давайте создадим приложение Flask, настроим LoginManager и проверим значение атрибута is_anonymous для анонимного пользователя:
from flask import Flask
from flask_login import LoginManager, AnonymousUserMixin
app = Flask(__name__)
app.secret_key = 'secret'
login_manager = LoginManager()
login_manager.init_app(app)
@login_manager.user_loader
def load_user(user_id):
return None
@app.route('/')
def index():
anon = AnonymousUserMixin()
res = anon.is_anonymous
return str(res)
Результат выполнения кода для адреса /:
True
Пример
Давайте проверим, как атрибут is_anonymous работает в связке с текущим пользователем. Если пользователь не аутентифицирован, current_user будет экземпляром AnonymousUserMixin, и его атрибут is_anonymous вернёт True:
from flask import Flask
from flask_login import LoginManager, current_user
app = Flask(__name__)
app.secret_key = 'secret'
login_manager = LoginManager()
login_manager.init_app(app)
@login_manager.user_loader
def load_user(user_id):
return None
@app.route('/')
def index():
res = current_user.is_anonymous
return str(res)
Результат выполнения кода для адреса /:
True
Смотрите также
-
класс
AnonymousUserMixin,
который представляет анонимного пользователя -
атрибут
is_authenticated,
который всегда возвращает False для анонимного пользователя -
атрибут
is_active,
который всегда возвращает False для анонимного пользователя -
метод
get_id,
который возвращает None для анонимного пользователя