TypeError: The view function for 'Page' did not return a valid response. The function either returned None or ended without a return statement
Пытался создать страницу регистрации а получил ошибку сервера.
Код:
from flask import render_template, request, redirect, flash
from flask_login import login_user, login_required, logout_user
from LSModule import app, db
from LSModule import modules as m
from werkzeug.security import check_password_hash, generate_password_hash
@app.route("/home", methods=['get'])
def RedirToMain():
return redirect("/")
@app.route("/", methods=['get', 'post'])
def MainPage():
return render_template("index.html")
@app.route("/reg", methods=['get', 'post'])
def RegisterPage():
login = request.form.get('login')
password = request.form.get('password')
password2 = request.form.get('password2')
if request.method == 'POST':
if not (login or password or password2):
flash("Please fill all fields.")
elif password != password2:
flash('Passwords are not equal.')
else:
hash_pwd = generate_password_hash(password)
new_user = m.User(login=login, password=hash_pwd)
db.session.add(new_user)
db.session.commit()
return redirect('/login')
@app.route("/login", methods=['get', 'post'])
def LoginPage():
login = request.form.get('login')
password = request.form.get('password')
if login and password:
user = m.User.query.filter_by(login=login).first()
if check_password_hash(user.password, password):
login_user(user)
next_page = request.args.get('next')
redirect(next_page)
else:
flash('Authentication error. Please check your login and password.')
else:
flash('Authentication error. Please check your login and password.')
return render_template('login.html')
@app.route("/logout")
@login_required
def logout():
logout_user()
return redirect("/")
Ошибка:
* Serving Flask app 'LSModule'
* Debug mode: off
WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
* Running on http://127.0.0.1:5000
Press CTRL+C to quit
[2022-12-20 14:46:18,192] ERROR in app: Exception on /reg [GET]
Traceback (most recent call last):
File "C:\Users\Vadim\AppData\Local\Programs\Python\Python37-32\lib\site-packages\flask\app.py", line 2525, in wsgi_app
response = self.full_dispatch_request()
File "C:\Users\Vadim\AppData\Local\Programs\Python\Python37-32\lib\site-packages\flask\app.py", line 1823, in full_dispatch_request
return self.finalize_request(rv)
File "C:\Users\Vadim\AppData\Local\Programs\Python\Python37-32\lib\site-packages\flask\app.py", line 1842, in finalize_request
response = self.make_response(rv)
File "C:\Users\Vadim\AppData\Local\Programs\Python\Python37-32\lib\site-packages\flask\app.py", line 2135, in make_response
f"The view function for {request.endpoint!r} did not"
TypeError: The view function for 'RegisterPage' did not return a valid response. The function either returned None or ended without a return statement.
127.0.0.1 - - [20/Dec/2022 14:46:18] "GET /reg HTTP/1.1" 500 -