我正在使用 localhost 将 Flask 用于我的 Web 应用程序(因为文件夹现在位于我的电脑中),我在 Flask 应用程序之前创建了一个登录页面,但在登录后没有重定向到仪表板(Flask 应用程序的前端)。它保留在登录页面上。我的资源分布有一个模板文件夹,其中放置了login.html、dashboard.html,还有一个静态文件夹,其中放置了script.js(用于密码)和style.css。登录后我没有重定向到仪表板。这是我的烧瓶应用程序的代码 从烧瓶导入烧瓶,渲染模板,请求,重定向,url_for,会话,flash
app = Flask(__name__)
app.secret_key = "your_secret_key"
@app.route('/')
def index():
return render_template('login.html')
@app.route('/login', methods=['POST'])
def login():
username = request.form.get('username')
password = request.form.get('password')
if username == 'admin' and password == 'password':
session['logged_in'] = True
app.logger.info('Login successful. Redirecting to dashboard...')
return redirect(url_for('dashboard'))
else:
flash('Invalid username or password. Please try again.', 'error')
app.logger.warning('Login failed. Invalid username or password.')
return redirect(url_for('index'))
@app.route('/dashboard')
def dashboard():
if 'logged_in' not in session:
flash('Please login to access the dashboard.', 'error')
app.logger.warning('User attempted to access dashboard without login.')
return redirect(url_for('index'))
app.logger.info('User authenticated. Rendering dashboard...')
return render_template('dashboard')
if __name__ == '__main__':
app.run(debug=True)
我尝试了chatGPt,我期待处理这个错误和修改后的代码
除了缩进之外,代码是正确的。 尝试运行此代码并查看它打印的内容
from flask import (Flask, session,request, flash, redirect,url_for)
app = Flask(__name__)
app.secret_key = "your_secret_key"
@app.route('/')
def index():
return 'login'
@app.route('/login', methods=['POST'])
def login():
username = request.form.get('username')
password = request.form.get('password')
print(request.content_type)
print(username)
print(password)
if username == 'admin' and password == 'password':
session['logged_in'] = True
app.logger.info('Login successful. Redirecting to dashboard...')
return redirect(url_for('dashboard'))
else:
flash('Invalid username or password. Please try again.', 'error')
app.logger.warning('Login failed. Invalid username or password.')
return redirect(url_for('index'))
@app.route('/dashboard')
def dashboard():
if 'logged_in' not in session:
flash('Please login to access the dashboard.', 'error')
app.logger.warning('User attempted to access dashboard without login.')
return redirect(url_for('index'))
app.logger.info('User authenticated. Rendering dashboard...')
return "dashboard"
if __name__ == '__main__':
app.run(debug=True)