Flask应用程序会自动从数据库中提取数据吗

时间:2018-11-05 12:36:17

标签: python database flask

我有一个Flask应用,当它在localhost上启动时,它会从服务器上的数据库中提取数据。 我的问题是,当此应用程序使用WSGi放置在生产服务器上时,即始终在后台运行,它将在到达数据库时从数据库中提取新数据,还是必须每次都重新启动才能获取新数据。

1 个答案:

答案 0 :(得分:0)

您可以使用JavaScript和JQuery完成此操作:

如果您将此示例作为您的应用程序:

from flask import Flask, jsonify, render_template, request
app = Flask(__name__)

@app.route('/_add_numbers')
def add_numbers():
    a = request.args.get('a', 0, type=int)
    b = request.args.get('b', 0, type=int)
    return jsonify(result=a + b)

@app.route('/')
def index():
    return render_template('index.html')

您要做的是将添加到index.html文件中:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

<script>window.jQuery || document.write('<script src="{{  url_for('static', filename='jquery.js') }}">\x3C/script>')</script>

<script type=text/javascript>
  $SCRIPT_ROOT = {{ request.script_root|tojson|safe }};
</script>

script type=text/javascript>
  $(function() {
    $('a#calculate').bind('click', function() {
      $.getJSON($SCRIPT_ROOT + '/_add_numbers', {
        a: $('input[name="a"]').val(),
        b: $('input[name="b"]').val()
      }, function(data) {
        $("#result").text(data.result);
      });
      return false;
    });
  });
</script>
<h1>jQuery Example</h1>
<p><input type=text size=5 name=a> +
   <input type=text size=5 name=b> =
   <span id=result>?</span>
<p><a href=# id=calculate>calculate server side</a>

这只是将AJAX与Falsk结合使用的示例,您可以阅读更多here

我建议您查看以下问题并回答:question

希望这对您有所帮助!