#python #flask
#python #flask
Вопрос:
Внутри моей папки templates есть другая папка с именем templates / destinations. Внутри папки «назначения» у меня есть 8 HTML-файлов. Когда я попытался передать каждое назначение в качестве переменной, как в следующем коде, я получаю ошибку 404. Что не так с моим кодом?
demo.py как следует из flask import Flask, render_template
@app.route('/destinations/{city}', methods = ['GET'])
def destinations(city):
destn = 'destinations/' city '.html'
return render_template(destn)
код навигации html следующим образом
<ul class="nav-dropdown">
<li><a href="destinations/london">London</a></li>
<li><a href="destinations/ny">New York</a></li>
<li><a href="destinations/paris">Paris</a></li>
Комментарии:
1. Каково значение «city» в вашем методе (используйте print или pdb, чтобы выяснить)? Кроме того, каково конечное значение destn прямо перед возвратом? Ваш код выглядит нормально для меня.
2. @Ludo21South если вы посмотрите на код, который у них есть
{city}
, а<city>
не в маршруте.3. Хорошо заметил @CodeLikeBeaker . Я пропустил это.
Ответ №1:
Замените фигурную скобку вместо:
@app.route('/destinations/{city}', methods = ['GET'])
Изменить на
@app.route('/destinations/<city>', methods = ['GET'])
Документ: https://flask.palletsprojects.com/en/1.1.x/quickstart/#variable-rules