Не загружается картинка в форме во flask
Я создал форму с помощью flask-wtf:
class FilmForm(FlaskForm):
title = StringField('Название фильма', validators=[DataRequired()])
year = IntegerField('Год выпуска', validators=[DataRequired()])
poster = FileField('Постер', validators=[FileRequired(), FileAllowed(['jpg', 'png', 'jpeg'])])
submit = SubmitField('Submit')
Сделал обработчик:
@app.route("/add_film", methods=['GET', 'POST'])
def add_film():
form = FilmForm()
if form.validate_on_submit():
film = Film()
f = film.poster.data
filename = secure_filename(f.filename)
print(filename)
Сама форма выглядит вот так:
<form method="POST" action="" enctype="multipart/form-data">
{{ form.hidden_tag() }}
{{ form.poster.label }}<br>
{{ form.poster(class="form-control-file"), placeholder="Загрузите картинку") }}<br>
{% for error in form.poster.errors %}
<p content="alert alert-danger" role="alert">
{{ error }}
</p>
{% endfor %}
{{ form.submit(type="submit", class="btn btn-primary") }}
</form>
При заполнении формы и нажатии кнопки submit мне выдаётся такая ошибка:
File "C:\Users\Dima\PycharmProjects\watch-and-flex\main.py", line 38, in add_film
f = film.poster.data
AttributeError: 'NoneType' object has no attribute 'data'
127.0.0.1 - - [03/Apr/2022 18:28:21] "POST /add_film HTTP/1.1" 500 -
Я не понимаю, почему у меня не получается получить картинку, она всегда None.