我正在返回一个模板,其中包含从Flask服务器到angularJS的一些数据。
jsonObject - {“name”:“alan”}
@app.route("/hello")
return render_template("hello.html", result=jsonObject)
var app=angular.module('myApp',[]);
app.controller("MainController", function($scope,$http){
var done=function(resp){
//how to get the response data from server
$scope.list=?
};
var fail=function(err){
};
$http.get('http://127.0.0.1:8083/hello')
.then(done,fail);
});
<body>
Hello {{list.name}}!!
</body>
如何在服务器中使用render_template获取控制器中的响应对象?
答案 0 :(得分:0)
你可以将json作为一个解决方案放在页面上
<script>var jsonObject = {{ jsonObject|tojson|safe }}</script>
答案 1 :(得分:0)
我为您提供了解决问题的示例解决方案。您必须了解并且可以解决您的问题
{'result':["item1","item2","item3"]}
from flask import jsonify
@app.route('/s/', methods=('GET',))
def search_query():
"""
View which is called whenever the '/s/' this url is requested
"""
return jsonify({'result':["item1","item2","item3"]})
您必须返回json
而不是使用render_template
。
$http.get("/s/").then(function(r) {
$scope.results = r.data.result;
alert(r.data.result); //verify your response data
});
您可以使用角度results
的{{1}}属性进行操作。