return render_template('Search.html', place_name, place_rating, place_location)
Выше недопустимый синтаксис.Когда вы передаете детали в шаблон, вам нужно сделать это следующим образом:
return render_template('Search.html', name = place_name,
rating = place_rating, location = place_location)
Переменные name
, rating
и location
будут доступны в шаблоне как {{name}}
,{{rating}}
и {{location}}
.
Однако то, как вы разметили циклы for, означает, что при первом выполнении оператора return он остановит цикл и вернет шаблон с этими переменными.
Возможно, это то, что вы хотите, но вы можете передать query_result
в шаблон и внедрить в шаблон цикл Jinja2 for для распечатки различных деталей места.Вы удалили бы циклы for и заменили весь этот блок на:
return render_template('Search.html', all_places = query_result)
Затем в шаблоне что-то вроде:
{% if all_places %}
{% for place in all_places %}
<p><b>{{place.name}}</b> has a rating of <u>{{place.rating}}</u></p>
{% endfor %}
{% else %}
<p>No places found.</p>
{% endif %}