欢迎光临
我们一直在努力

程序员Python Flask:获取和发布方法的不同render_template可能吗? – python

程序员面试经验

我有一个要在index.html上显示的模板(GET),并且是一个在POST上添加了变量的模板。

app.py:

from flask import Flask, render_template app = Flask(__name__)  @app.route("/") def hello():     return render_template("index.html")  @app.route("/", methods=["POST"]) def hello_():     return render_template("index.html", string_="Success!")  if __name__ == "__main__":     app.run(host='0.0.0.0', port=4567) 

index.html:

<html>     <head>         <script type="text/javascript" src="/static/jquery.js"></script>     </head>      <body>      <button onclick="signIn();">Sign In</button>     <h1>{{ string_ }}</h1>      <script>         function signIn() {         var data = "data";          $.ajax({             type : "POST",             data: JSON.stringify(data, null, 't'),             contentType: 'application/json',             success: function(result) {                 console.log(result);                 }               });         }     </script>     </body> </html> 

追溯:

 * Running on http://0.0.0.0:4567/ (Press CTRL+C to quit) 127.0.0.1 - - [11/Dec/2015 11:16:17] "GET / HTTP/1.1" 200 - 127.0.0.1 - - [11/Dec/2015 11:16:17] "GET /static/jquery.js HTTP/1.1" 304 - 127.0.0.1 - - [11/Dec/2015 11:16:21] "POST / HTTP/1.1" 200 - 

我没有收到错误,但是变量string_没有出现在POST的模板中(单击按钮后)。我设置为在POST上渲染的模板似乎无法正常工作。

是否可以基于request.method在Flask中渲染其他模板?

参考方案

将它分为两​​条截然不同的路径是最有意义的,一条为GET服务,另一条为POST服务。

@app.route('/') def index_as_get():     return render_template('index.html', name="")  @app.route('/', methods=["POST"]) def index_as_post():     r = request.get_json()     name = r['name']     return render_template('index.html', name=name) 

请注意,您实际上必须通过REST客户端来调用此行为,该客户端可以在您注意到任何内容之前对根页面调用POST请求。

flask:异常后停止服务器 – python

我想在发生未处理的异常时立即停止我的Flask服务器。这是一个例子:from flask import Flask app = Flask(__name__) @app.route('/') def hello_world(): 1/0 # argh, exception return 'Hello World!' i…

Python / Flask-如何在响应中返回有效的JSON而不是字符串? – python

我正在使用Flask Restful创建一个简单的API,该API在get Response中返回JSON。我所有的方法都很好,我的问题是响应结果中的细节,因为JSON实际上是以字符串形式出现的,我不知道该怎么做。当我用json.dumps()转换python dict时会发生问题我尝试不使用json.dumps()方法来执行此操作,并且我的结果采用所需的格…

Flask模板中的全局变量 – python

可能不是准确的标题,因为我是flask / python的新手。我正在开发一种内部工具,供不同团队使用。每个团队都有不同的部署阶段,例如alpha,beta|test,prod,并且它们还具有多个区域,例如NA,EU,AP等。现在,当我使用redirect_template时,我将发送stage和region作为变量,然后在模板中使用它们。但是,对每个red…

Flask-RESTful-返回自定义响应格式 – python

我已经按照以下Flask-RESTful文档定义了自定义响应格式。app = Flask(__name__) api = restful.Api(app) @api.representation('application/octet-stream') def binary(data, code, headers=None): resp =…

如何在Flask中生成临时下载? – python

我有一个Flask应用,可让用户下载MP3文件。如何使下载的URL仅在特定时间段内有效?例如,我不想让任何人简单地转到example.com/static/sound.mp3并访问文件,而是希望验证每个请求以防止不必要的带宽。我正在使用Apache服务器,但是如果更容易实现,我可能会考虑切换到另一个服务器。另外,我不想使用Flask来提供文件,因为这会通过迫…

赞(0)
未经允许不得转载: 京大飞辅助网程序员面试-区块链javago面经 » 程序员Python Flask:获取和发布方法的不同render_template可能吗? – python

相关推荐

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址