0
我有一個Flask應用程序,我正在與JS集成。我app.py文件看起來像這樣:燒瓶渲染模板重複HTML
import urllib
import requests
import time
from es import book
from flask import Flask, render_template, request, jsonify
app = Flask(__name__)
@app.route("/")
def index():
current_origin = jsonify(book())
return render_template('index.html', current_origin=current_origin)
if __name__ == "__main__":
app.run(host='0.0.0.0', debug=True ,port=5000)
和相應的JS是這樣的:
$(document).ready(function() {
console.log("ready!");
$('#try-again').hide();
// gets values from flask
$.ajax({
type: "GET",
url: "/",
success: function(data) {
$('#results').append(data);
console.log(data);
},
error: function(error) {
console.log(error);
}
});
});
該控制檯打印從調用相應的數據es import book
,但所呈現的頁面只是不斷重複沒有數據值的HTML(附加到正確的div但沒有我期望的數據的HTML的無盡重複)。我嘗試了$('#results').append(data)
的幾個變種,以包含.html(data),.text(data)等,但我不明白我在這裏做錯了什麼。
酷!一個小調整,它的工作。我不得不改變'url:「{{url_for('get_book')}}」,'改爲'url:「/ get_book」',它就像一個魅力一樣。感謝您的幫助,我將不得不重新審視燒瓶端點文檔,直到現在,我錯過了這個概念。 – nmacc
啊......好的。其實我不確定你的JS是否在渲染的index.html文件中。 '{{}}'語法是Jinja2,所以如果它是一個不起作用的靜態資源。很高興我能幫上忙。 – abigperson