Почему у меня не работает программа hello world? - PullRequest
0 голосов
/ 31 января 2019

Моя первая программа hello world не работает.

Я новичок. Я не знаю, как это понять !!!

Это мой код:

from flask import Flask
app=Flask(__name__)
@app.route('/')
def index():
    return "<h1>Hello world</h1>"

if __name__=='__main__':
        app.run()

И это мой вывод:

(myflaskenv) C:\Users\saini computers\Desktop\flask_examples>python 
 basic.py
Traceback (most recent call last):
  File "basic.py", line 6, in <module>
    @app.route('/information')
  File "C:\Users\saini computers\Anaconda3\envs\myflaskenv\lib\site- 
  packages\flask\app.py", line 1250, in decorator
    self.add_url_rule(rule, endpoint, f, **options)
  File "C:\Users\saini computers\Anaconda3\envs\myflaskenv\lib\site- 
  packages\flask\app.py", line 66, in wrapper_func
    return f(self, *args, **kwargs)
  File "C:\Users\saini computers\Anaconda3\envs\myflaskenv\lib\site- 
  packages\flask\app.py", line 1221, in add_url_rule
    'existing endpoint function: %s' % endpoint)

AssertionError: При отображении функций представления перезаписывается существующая функция конечной точки: index

1 Ответ

0 голосов
/ 31 января 2019

AssertionError: При отображении функции View перезаписывается существующая функция конечной точки: index

Эта ошибка означает, что вы использовали одно и то же имя метода в нескольких маршрутах.

Вы можете воспроизвести ошибку, используя следующий код:

from flask import Flask

app = Flask(__name__)

@app.route("/")
def index():
    return "hello from index"

@app.route("/info")
def index():
    return "hello from info"

app.run(debug=True, port=8080)

Трассировка ошибки:

(venv) ➜ python app.py 
Traceback (most recent call last):
  File "app.py", line 9, in <module>
    @app.route("/info", methods=['GET'])
  File ".../app.py", line 1250, in decorator
    self.add_url_rule(rule, endpoint, f, **options)
  File ".../app.py", line 66, in wrapper_func
    return f(self, *args, **kwargs)
  File ".../app.py", line 1221, in add_url_rule
    'existing endpoint function: %s' % endpoint)
AssertionError: View function mapping is overwriting an existing endpoint function: index

Оба маршрута @app.route("/info") и @app.route("/") используют один и тот же метод, который называетсяindex.Итак, я получаю ошибку: AssertionError: View function mapping is overwriting an existing endpoint function: index

Я думаю, вы делаете ту же ошибку.Вы используете метод index для маршрутов / и /information.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...