Вы создали 2 раза маршрут index
=> /
@app.route('/')
def index():
result = False
return render_template('index.html', result=result)
@app.route('/',methods = ['POST', 'GET'])
Поэтому при отправке формы ничего не происходит из-за первого декоратора, который по умолчанию настроен только на обработку запроса GET.
Если вы хотите обработать оба запроса POST и GET , вы можете сделать это следующим образом:
@app.route('/', methods=['GET', 'POST'])
def index():
if request.method == 'POST':
(ALL CODE FROM your result function HERE)
else:
result = False
return render_template('index.html', result=result)
РЕДАКТИРОВАТЬ:
Я запустил ваш код.Есть много мелких ошибок, и вы не следуете стандарту PEP 8, поэтому вам и мне очень трудно читать ваш код.Ваши request.form
данные после отправки формы действительны, вы конвертируете все в числа с плавающей точкой, но в строке 95 вы получаете ZeroDivisionError
, поэтому, пожалуйста, пересмотрите свой код на маленькие части и проверьте, какая часть уравненияравно 0. Попробуйте разделить код и получить отладчик, который поможет вам оценить выражения.
Кроме того, удачи.