werkzeug.routing.BuildError для приложения Flask - PullRequest
0 голосов
/ 11 июля 2020

У меня возникла ошибка при попытке запустить приложение Flask: BuildError: не удалось создать URL-адрес для конечной точки 'result' со значениями ['resultFound']. Вы имели в виду «меню»?

Проблема связана с вызовом POST. Я приложил код для 4 файлов, связанных с этой ошибкой, но не включил пакеты импорта и другие части файлов. Буду очень признателен за вашу помощь. Большое спасибо. Если вам нужен другой код, я могу добавить его.

Это моя основная python функция, которая запускает приложение flask.

@app.route("/search", methods=["POST", "GET"])
def search():
    if request.method == "POST":
        user = request.form["searching"]
        return redirect(url_for('result', resultFound = user))
    else:
        return render_template("search.html")

app.route("/<resultFound>")
def result(resultFound):
    return render_template('result.html', nameartist = artistName(resultFound), numfollowers = artistfollower(resultFound))

Это python файл, который получает информацию для результатов. html с входным значением из поиска. html.

def artists(searchinput):
    searchResults = spotifyObject.search(searchinput,1,0,"artist")
    artist = searchResults['artists']['items'][0]
    return artist

def artistname(inputvalue):
    value = artists(inputvalue)
    artistName = value['name']
    return artistName

def artistfollower(inputvalue):
    value = artists(inputvalue)
    artistfollowers = value['followers']['total']
    return artistfollowers

Это поиск. html, который получает входное значение.

   <form action="#" method="post">
       <input type="text" id="myText" name="searching" value="input artist">
       <p><input type="submit" value="submit" /></p>
   </form>

Это результат. html, который использует входное значение из поиска. html и получает данные с помощью файла python.

  <p>The artist {{ nameartist }} has {{ numfollowers }} followers.</p>

1 Ответ

3 голосов
/ 11 июля 2020
BuildError: Could not build url for endpoint 'result' with values ['resultFound'].

, потому что вам не хватает @ в result декораторе маршрута (@app, а не app)

@app.route("/<resultFound>")
def result(resultFound):
    [..]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...