Нужна помощь Python, Flask
Я хочу сделать сайт, который удаляет слова, которые ввёл пользователь из текста. Саму систему проверки текста буду дорабатывать, но сейчас не об этом. Почему-то не работает if form.validate_on_submit():. Заранее спасибо. HTML:
<!doctype html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<link rel="stylesheet", href="{{ url_for('static', filename = 'css/main.css') }}">
<link rel="stylesheet", href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css">
<title>Document</title>
</head>
<body>
<p>{{ form.csrf_token }}
<p>{{ form.startText.label() }} {{ form.startText() }}
<p>{{ form.deleteWords.label() }} {{ form.deleteWords() }}
<p>{{ form.submit() }}
<h1>Результат</h1>
<hr/>
{% block body %}{% endblock %}
</body>
</html>
Python:
from flask import Flask, render_template, url_for, request
from flask_wtf import FlaskForm
from wtforms import StringField, SubmitField
from wtforms.validators import DataRequired
app = Flask(__name__)
# i will do it later
app.config['SECRET_KEY']='LongAndRandomSecretKey'
#class with forms
class TextCollector(FlaskForm):
startText = StringField('Enter Text Here:')
deleteWords = StringField('Enter words, that you want to delete:')
submit = SubmitField('Submit')
#main page
@app.route('/', methods=['GET', 'POST'])
def index():
#form identification
form = TextCollector()
#Text from forms
original_text = form.startText.data
blocked_words = form.deleteWords.data
#Form Validation
if form.validate_on_submit():
print('Validated')
#empty list
empty_text = []
#text splt
splited_text = original_text.split(' ')
splited_blocked_words = blocked_words.split(' ')
#перебор каждого слова из оригинального текста (уже списка)
for word in splited_text:
#если слово не в запрещённых
if word not in splited_blocked_words:
empty_text.append(word)
#превращение списка в текст
result = ' '.join(empty_text)
#вывод готового текста
return result
return render_template('index.html', form=form)
if __name__ == '__main__':
app.run(debug = True)