![](/img/trans.png)
[英]AttributeError: 'Flask' object has no attribute 'login_manager' -- Login_Manager
[英]Getting an error: AttributeError: 'Flask' object has no attribute 'login_manager'
我正在嘗試運行我的 Flask 應用程序,但每次加載我的索引頁面時,它都會給我錯誤:AttributeError: 'Flask' object has no attribute 'login_manager'。 在我輸入這個特定的代碼之前它可以工作
bp = flask.Blueprint("bp", __name__, template_folder="./build")
@bp.route('/index')
@login_required
def index():
# TODO: insert the data fetched by your app main page here as a JSON
DATA = {"your": "data here"}
data = json.dumps(DATA)
return flask.render_template(
"index.html",
data=data,
)
app.register_blueprint(bp)
這是我當前可以工作的代碼
@app.route("/index", methods=["GET", "POST"])
def index():
global current_user
if not current_user:
return flask.redirect(flask.url_for("login"))
if flask.request.method == "GET":
track_name, genius_link, track_artist, track_image, track_url = render()
# If user has no favorite artists, redirect back to profile.
if track_name == None:
return flask.redirect(flask.url_for("profile"))
return flask.render_template(
"index.html",
variable=track_name,
variable1=genius_link,
variable2=track_artist,
variable3=track_image,
variable4=track_url,
)
else:
valid_artist = validate_and_insert_artist(flask.request.form["artistId"])
if not valid_artist:
return flask.render_template("index.html", error=True)
else:
track_name, genius_link, track_artist, track_image, track_url = render()
# If user has no favorite artists, redirect back to profile.
if track_name == None:
return flask.redirect(flask.url_for("profile"))
return flask.render_template(
"index.html",
variable=track_name,
variable1=genius_link,
variable2=track_artist,
variable3=track_image,
variable4=track_url,
)
我不知道為什么我一輸入藍圖代碼,它就停止工作並給我那個錯誤
這是我的 login.html
@app.route("/login", methods=["GET", "POST"])
def login():
global current_user
if current_user:
return flask.redirect(flask.url_for("profile"))
if flask.request.method == "GET":
return flask.render_template("login.html")
if flask.request.method == "POST":
username = flask.request.form["username"]
cursor.execute(
"SELECT user_name FROM public.users WHERE user_name = %s", [username]
)
results = cursor.fetchall()
if len(results) != 0: # if a user exists, "log" them in
current_user = username
return flask.redirect(flask.url_for("profile"))
else:
return flask.render_template("login.html", error=True)
您需要閱讀@login_required的 Flask 文檔。 一旦添加了需要用戶登錄的方法,就需要提供用戶可以登錄的方法。
或者您只是想刪除@login_required
?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.