Flask не работает маршрутизация от домена
from flask_wtf import FlaskForm
from wtforms import StringField , PasswordField , SubmitField , EmailField
from wtforms.validators import DataRequired , ValidationError , Length , Email , EqualTo
import csv
class UserForm(FlaskForm):
username = StringField(label=('Введите имя') , validators=[DataRequired(), Length(min=2)])
email = EmailField(label='Введите email', validators=[DataRequired(), Length(min=6), Email()])
password = PasswordField(label=('Введите пароль'), validators=[DataRequired(), Length(min=8)])
confirm_password = PasswordField(label=('Повторите пароль'), validators=[DataRequired(), Length(min=8), EqualTo('password',message='Пароли не совпадают!')])
submit = SubmitField(label=('Зарегестрироваться'))
application = Flask(__name__)
application.config['SECRET_KEY'] = 'simple_key'
application.config['TRAP_HTTP_EXCEPTIONS'] = True
@application.route('/login/', methods=['get' , 'post'])
def login():
intermediate_dict = {}
with open('baze.csv','r',encoding='cp1251') as f:
for row in f :
intermediate_list = [i for i in row.split(',')]
intermediate_dict[intermediate_list[0]] = [intermediate_list[1],intermediate_list[2]]
error , username = '' , None
if request.method == 'POST':
username = request.form.get('username')
password = request.form.get('password')
if username in intermediate_dict.keys():
if password == intermediate_dict[username][0]:
session['loged_user'] = username
session.modified = True
return redirect(url_for('main'))
else:
error = 'Неверный пароль!'
else:
error = 'Пользователя с данным именем нет!'
return render_template('login.html', error=error)
@application.route('/')
@application.route('/main/')
def main():
return render_template('main.html')
@application.route('/register/', methods=['get' , 'post'])
def register():
done = None
name_error = None
form = UserForm()
intermediate_dict = {}
with open('baze.csv','r',encoding='cp1251') as f:
for row in f :
intermediate_list = [i for i in row.split(',')]
intermediate_dict[intermediate_list[0]] = [intermediate_list[1],intermediate_list[2]]
if form.username.data in intermediate_dict.keys():
name_error = 'Имя уже занято!'
if form.validate_on_submit() and not form.username.data in intermediate_dict.keys():
done = True
intermediate_dict[form.username.data] = [form.password.data , form.email.data + '\n']
with open('baze.csv','a',encoding='cp1251') as f:
f.write(form.username.data+','+intermediate_dict[form.username.data][0]+','+intermediate_dict[form.username.data][1])
return render_template('register.html', form=form , name_error=name_error , done = done)
@application.route('/profile/', methods=['get','post'])
def profile():
profile_info = None
intermediate_dict = {}
with open('baze.csv','r',encoding='cp1251') as f:
for row in f :
intermediate_list = [i for i in row.split(',')]
intermediate_dict[intermediate_list[0]] = [intermediate_list[1],intermediate_list[2]]
if 'loged_user' in session:
profile_info = [session['loged_user'],intermediate_dict[session['loged_user']][1]]
return render_template('profile.html' , profile=profile_info)
@application.route('/logout/')
def logout():
session.pop('loged_user',None)
return redirect(url_for('main'))
if __name__ == '__main__':
application.config['SERVER_NAME'] = 'exemple.ru'
application.run(debug = True,host='0.0.0.0' , use_reloader=True)
При переходе по домену "http://exemple.ru/" показывает главную страницу , а при попытке перейти на другую - выдает ошибку 500 . Как простроить маршруты ?