Cannot import LoginManager () in Flask

I use Flask BluePrint in my applications and should have the main parts: 1. Admin and 2. Public. When I try to import loginManager into the views.py file, I get an ImportError error message: it is not possible to import the name lm
my folder structure is similar:

~/LargeApplication
    |-- run.py
    |-- config.py
    |__ /env             # Virtual Environment
    |__ /app             # Application Module
         |-- __init__.py
         |-- models.py
         |-- /admin
             |-- __init__.py
             |-- views.py                
         |__ /templates
             |-- ..
    |__ ..
    |__ .

I initialize LoginManager () in __ init__.py / app / __ init__.py

from flask.ext.login import LoginManager
lm = LoginManager()
lm.init_app(app)
lm.login_view = 'login'

and when I try to import lm to /app/admin/views.py

from app import lm

it raises ImportError.

ImportError: cannot import name lm

Could you tell me what could be the problem?

+4
source share
1 answer

, , . , , , .

:

from flask.ext.login import LoginManager
from app.admin import admin_blueprint

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

app.admin lm = LoginManager(); app.admin, app.lm, .

lm :

from flask.ext.login import LoginManager

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

from app.admin import admin_blueprint

" " .

+6

Source: https://habr.com/ru/post/1541942/


All Articles