【发布时间】:2017-07-05 23:03:23
【问题描述】:
我有一个为 Angular 前端提供服务的龙卷风后端。在更新数据库时,tornado api 不会获取更新的数据。它仅在我重新启动服务器后出现。有人可以帮我吗?我希望获取的数据能够实时更新。
AngularJS ajax 请求:
$http({
method: "GET",
url: "http://localhost:9915/api/"
}).then(function mySuccess(response) {
console.log(response);
$scope.data = response.data;
sharedData.set(response.data);
for (var i = $scope.data.length - 1; i >= 0; i--) {
var coverageVal = $scope.data[i].Coverage;
var coverageHealth = $scope.data[i].Health;
if (coverageVal >= 95.00) {
$scope.data[i]["colorCoverage"] = "cyan";
} else if (coverageVal >= 90.00 && coverageVal < 95.00) {
$scope.data[i]["colorCoverage"] = "warning";
} else {
$scope.data[i]["colorCoverage"] = "danger";
}
if (coverageHealth >= 95.00) {
$scope.data[i]["colorHealth"] = "cyan";
} else if (coverageHealth >= 90.00 && coverageHealth < 95.00) {
$scope.data[i]["colorHealth"] = "warning";
} else {
$scope.data[i]["colorHealth"] = "danger";
}
}
}, function myError(err) {
console.log("error");
console.log(err);
});
Tornado api 获取数据:
class ApiRequestHandler(web.RequestHandler):
def get(self):
cur = conn.cursor()
cur.execute("SELECT * from db.table")
res = []
for row in cur:
res.append(row)
self.write(json.dumps(res))
【问题讨论】:
-
孤立交易?
-
是的,它们是孤立的。数据是从另一个未由 tornado api 处理的脚本更新的。
-
您确认前端部分(角度)发出了 ajax 请求吗?显示一些代码,它可能会有所帮助
-
我已经添加了代码。请看一看。
-
如何更新
db.table?你提交更改吗?如果没有,您是否启用了自动提交?
标签: python mysql angularjs tornado