как исправить Пользователь 'объект не имеет атрибута' is_active '? - PullRequest
0 голосов
/ 26 мая 2019

моя функция login_user (пользователь) не работает, каждый раз, когда я вхожу в эту ошибку, возникает ошибка AttributeError: у объекта 'User' нет атрибута 'is_active'

я думаю, что моя функция user_loader всегда возвращает none *

вот мой models.py

from flask_login import UserMixin 
from datetime import datetime
from flaskblog import db,login_manager


@login_manager.user_loader
def load_user(user_id):
    return  User.query.get(int(user_id))

class User(db.Model, UserMixin):
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(20), unique=True, nullable=False)
    email = db.Column(db.String(120), unique=True, nullable=False)
    image_file = db.Column(db.String(20), nullable=False, default='default.jpg')
    password = db.Column(db.String(60), nullable=False)
    posts = db.relationship('Post', backref='author', lazy=True)

и вот мой маршрут

@app.route("/login",methods=['GET','POST'])
def login():
    if current_user.is_authenticated:
        return redirect(url_for('home'))
    form = LoginForm()
    if form.validate_on_submit():
        user = User.query.filter_by(email=form.email.data).first()
        if user and bcrypt.check_password_hash(user.password,form.password.data):
            login_user(user)
            flash(f'You have been loged in','success')
            return redirect(url_for('home'))
        else:
            flash(f'cheack email and password','danger')
    return render_template('Login.html', title='login', form=form)

Flask_blog / flaskblog / rout.py ", строка 60, в login login_user (пользователь)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...