【问题标题】:(Beginner) Flask dynamic routing not working(初学者)Flask 动态路由不起作用
【发布时间】:2020-07-15 12:50:28
【问题描述】:

我刚刚开始学习Flask,但我什至无法完成这个初学者步骤。我试图制作如下dynamic URL 路线,但是当我转到http://127.0.0.1:5000/home 时,它会显示"NOT FOUND"。任何帮助表示赞赏!

from flask import Flask

app = Flask(__name__)

@app.route("/") #this is the default domain
def home():
    return "<h1>Hello this main page</h1>"

@app.route("/<name>")
def user(name):
    return f"hi {name}"

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

【问题讨论】:

  • 你确定你没有访问http://127.0.0.1:5000/home/(注意尾部的正斜杠)?
  • 请看下面的回复!

标签: python flask web-site-project dynamic-routing


【解决方案1】:

您忘记设置路线 /home。 试试这个:)

@app.route("/home")
def home():
    return "<h1>Hello this main page</h1>"

【讨论】:

  • 抱歉我的问题不太清楚:默认主页运行正常!动态 URL 是行不通的。例如,转到“127.0.0.1:5000/bob”应该会出现一个页面,上面写着“hi bob”
  • 从我对问题的阅读来看,我认为 OP 期望动态路由 /&lt;name&gt; 能够工作。
  • 我的错!这应该根据 flask.palletsprojects.com/en/1.1.x/quickstart/#variable-rules 工作。尝试使用/user/&lt;username&gt; 的网址,然后该函数应将用户名作为参数!
  • 不幸的是,这仍然不起作用!我所做的更新:@app.route('/&lt;username&gt;') def show_user_profile(username): # show the user profile for that user return username 在转到 http://127.0.0.1:5000/a 时仍然返回 Not Found
  • 发现了一个问题!我正在更改默认主页的文本,但是当我转到 http://127.0.0.1:5000/ 时它没有更新。我假设我遗漏了一些非常简单的东西,但我正在保存脚本,重新运行服务器并转到该 URL,但它不起作用。
猜你喜欢
  • 2017-09-25
  • 1970-01-01
  • 1970-01-01
  • 2014-10-26
  • 1970-01-01
  • 2018-08-15
  • 1970-01-01
  • 2023-04-01
  • 2018-06-18
相关资源
最近更新 更多