flask-login使用時に、このエラーに悩まされたので解決方法を記載します。
エラー内容
AttributeError: '***' object has no attribute 'is_active'
***の部分は変わります。
解決方法1:ModelにUserMixinを継承させる
is_activeはUserMixinにある属性のためです。
# ...
from flask_login import UserMixin
class User(Base, UserMixin):
__tablename__ = 'users'
# ...
解決方法2:login_userはUserクラスのインスタンスを引数にしているか確認
こちらのページの例にもあるように、login_userの引数はUserクラスのインスタンスである必要があります。
# ...
from flask_login from login_user
@app.route('/login', methods=['POST'])
def login():
# ...
user = User()
login_user(user)
# ...
私は1,2どちらも行ったらエラー解消しました。