【问题标题】:Return button in flask烧瓶中的返回按钮
【发布时间】:2021-01-02 09:52:17
【问题描述】:

我正在学习使用 Flask,但我没有找到一个“简单的解决方案”(“简单的解决方案”是指我的菜鸟级别的简单解决方案,代码行很少)所以我在这里寻求帮助。

如何在烧瓶中新生成的页面上创建一个“返回”按钮?

这是我的代码:

计算器.py

from flask import Flask, request, render_template

app = Flask(__name__)

@app.route("/")
def my_form():
    return render_template("calc.html")

@app.route("/", methods=['POST'])
def my_form_post():
    num_1 = request.form['Number 1']
    num_2 = request.form['Number 2']
    result = int(num_1) + int(num_2)
    render = render_template("calc_result.html")
    #return render_template("calc_result.html")
    return "The result from " + str(num_1) + " plus " + str(num_2) + " is: " + str(result) + "."


app.run(host='127.0.0.1', port=5000)

calc.html

<html>
    <body>

    <form method = "POST">
    <input name = "Number 1">
    <input name = "Number 2">
    <input type = "submit">
    
    </body>
</form>

代码正在运行,正在接收数字并进行数学运算,但问题是,我无法在新生成的页面中生成带有结果的“返回”按钮。

如果我在 calc.html 中输入例如 10 + 10,我将收到:

10 加 10 的结果是:20。

我想在这个页面上放置一个“返回”按钮,或者学习如何在新的凝胶页面中生成一个新按钮,所以我会收到如下信息:

10 加 10 的结果是:20。

返回

对不起英语。


编辑:

这是用户在第一页看到的内容:

What user see in first page

将两个数相加后,他们看到:

Result page

我想让用户回到第一页并能够再做一笔。

两个页面中的链接相同:http://127.0.0.1:5000/

【问题讨论】:

  • 你想让“返回”按钮做什么?你想让它抹去你计算器里的文字吗?
  • 抱歉,没有说清楚这一点。我想返回到用户可以看到空白字段并再次进行数学运算的第一页。就像一个计算器。

标签: python flask button


【解决方案1】:

在您的“calc_result.html”文件中,创建一个链接或按钮,然后使用“url_for”命令将您带回您的“calc.html”页面。 Flask 允许您通过 jinja 模板将 Python 代码插入 HTML。查看快速入门指南here。所以:

<a href="{{ url_for('my_form') }}">Back</a>

【讨论】:

    【解决方案2】:

    您可以使用以下代码:

    <button onclick="goBack()">Go Back</button>
    
    <script>
    function goBack() {
      window.history.back();
    }
    </script>
    

    请参考this

    【讨论】:

      猜你喜欢
      • 2013-11-16
      • 2017-04-22
      • 2019-03-23
      • 1970-01-01
      • 1970-01-01
      • 2021-10-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多