Я видел пару других вопросов, таких как этот , в которых запрашивались способы отправки переменных из HTML обратно в колбу с помощью url_for (), и поэтому я тоже попробовал.
{% for movie in movies %}
<article class="media content-section">
<div class="media-body">
<div class="article-metadata">
<h3><a class="mr-2 mt-4" href="{{url_for('movies', movie_id=movie.id)}}" method="POST">{{ movie.title }}</a></h3>
<small class="text-muted">{{ movie.year }}</small>
<small class="text-muted">ID : {{ movie.id }}</small>
</div>
<h6><a class="article-title">Rating : {{ movie.rating }}</a></h6>
</div>
</article>
{% endfor %}
Как видно в строке 5, я сделал url_for () и отправил переменную movie_id, которая была атрибутом id моего объекта фильма, в мой маршрут, который выглядел следующим образом:
@app.route('/movies/<movie_id>', methods=['GET','POST'])
def movies(movie_id):
if request.method == 'POST':
movie = Movie.query.filter_by(id=movie_id).first()
return render_template('movies.html', movie=movie)
Однако после запускакод, я получаю сообщение о том, что UnboundLocalError: local variable 'movie' referenced before assignment
.Это происходит на последней строчке моего маршрута return render_template('movies.html', movie=movie)
.Могу ли я узнать, где я ошибся?