Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 属性错误:';烧瓶';对象没有属性';登录管理器';——登录管理器_Python_Flask - Fatal编程技术网

Python 属性错误:';烧瓶';对象没有属性';登录管理器';——登录管理器

Python 属性错误:';烧瓶';对象没有属性';登录管理器';——登录管理器,python,flask,Python,Flask,我的应用程序中的登录管理器有问题。这里抛出错误 def authenticate(form): if form.validate_on_submit(): try: user = session.query(User).filter(User.email == form.email.data).first() except :# models.DoesNotExist: flash("Your email o

我的应用程序中的登录管理器有问题。这里抛出错误

def authenticate(form):
    if form.validate_on_submit():
        try:
            user = session.query(User).filter(User.email == form.email.data).first()
        except :# models.DoesNotExist:
            flash("Your email or password does not match !", "error")
        else :
            if check_password_hash(user.password,form.password.data):
                login_user(user)
                flash("You've been logged in", "success")
                return redirect(url_for('index'))
            else :
                flash("Your email or password does not match !", "error")
    return render_template('login.html',form = form)  
这个问题在会议上提出

登录用户(用户)

我的登录管理器配置在授权下面,如下所示

if __name__ == '__main__':

    app.secret_key = 'Innalhamdulillah.nahmaduhu.taalanastainubihi.wanastagfiruh!'
    app.run(debug = DEBUG, host=HOST, port= PORT)

    login_manager = LoginManager()
    login_manager.init_app(app)
    login_manager.login_view = 'login'

    @login_manager.user_loader
    def load_user(userid):
        try:
            return session.query(User).filter(User.id == userid).first()
        except models.DoesNotExist :
            return None
在我的声明中

from flask.ext.login import LoginManager,login_user

请问我如何解决这个问题,原因是什么?我怎样才能更好地理解它?我怀疑我的
def load\u用户(userid):
bcos我不是很清楚,这是我的第一次。任何帮助都将不胜感激。

您在初始化LoginManager之前运行应用程序。 因此,你应该:

app.secret_key = 'xxxxyyyyyzzzzz'

login_manager = LoginManager()
login_manager.init_app(app)
login_manager.login_view = 'login'

app.run(debug = DEBUG, host=HOST, port= PORT)

我只是在学习烧瓶,我也遇到了这个问题。我发现我没有初始化应用程序的登录管理器

所以我改变了:

login_manager = LoginManager()


这就解决了我的问题。

所有烧瓶扩展都需要初始化。初始化登录管理器以便在应用程序中使用,如下所示:

login_manager = LoginManager()
login_manager.login_view = 'auth.login'
Exception: Missing user_loader or request_loader. Refer to http://flask-login.readthedocs.io/#how-it-works for more info.
AttributeError: 'Flask' object has no attribute 'login_manager'
别忘了这一点:

login_manager.init_app(app) 
如果未初始化,将引发如下错误:

login_manager = LoginManager()
login_manager.login_view = 'auth.login'
Exception: Missing user_loader or request_loader. Refer to http://flask-login.readthedocs.io/#how-it-works for more info.
AttributeError: 'Flask' object has no attribute 'login_manager'
或者像这样:

login_manager = LoginManager()
login_manager.login_view = 'auth.login'
Exception: Missing user_loader or request_loader. Refer to http://flask-login.readthedocs.io/#how-it-works for more info.
AttributeError: 'Flask' object has no attribute 'login_manager'
或者其他


登录\u管理器。init\u app(app)
是这里的关键。

我知道这已经在很久以前得到了回答,但是当我遇到同样的问题时,我遇到了这个线程,并且没有一个解决方案对我有效

在我的例子中,我在yonks之前构建的程序开始抛出这个异常:
exception:Missing user\u loader或request\u loader。提到http://flask-login.readthedocs.io/#how-它可以获取更多信息。

经过一点故障排除,我发现是python模块:
Flask Login
,我重新加载了我的电脑,再次安装我的所有软件时,
Flask Login
的版本现在是
0.5.0

我删除了该版本的
Flask Login
,并将其替换为重新加载之前的版本,使用cmd:

pip install -Iv Flask-Login==0.4.1
还有瓦拉拉。。。。已经修好了


希望这对像我这样的人有所帮助。

初始化后它不是在运行应用程序吗?我在装饰器中使用@role\u required时遇到此错误,如何解决此问题?