我正在尝试获取 Angular js 的部分“下载”,以通过来自 Sinatra 的 JSON 从 MySQL 数据库中获取信息。我已经编写了下面的代码,但它不起作用,我想知道我在 app.rb 中的路由是否错误,或者是 Angular 中的控制器。
如果有人能帮我解决这个问题,那就太好了,因为我在网上找不到任何相关的教程。非常感谢。
在 app.rb 中
get "/#/view1/downloadData" do
#get list of downloads for user
@download = Download.all(:order => [:downloadID], :limit => 20)
if @download
@download.to_json
#log to console if JSON pulled in correctly
puts "get list of downloads successful"
else
halt 404
#log to console if JSON failed
puts "get list of downloads JSON failed 404 displayed"
end
end
在 partials/downloads.html
<p>Manage downloads</p>
<ul ng-controller="MyCtrl1">
<li>ID: {{download.title}}, Name: {{download.downloadID}}</li>
</ul>
在 js/controllers.js
//'use strict';
/* Controllers */
angular.module('myApp.controllers', []).
controller('MyCtrl1', [function($scope, $http) {
//a scope function to load the data.
$scope = function () {
$http.get('/#/view1/downloadData').success(function(data) {
$scope.items = data;
console.log(data);
console.log("data got succesfully");
});
};
}])
.controller('MyCtrl2', [function() {
}])
.controller('MyCtrl3', [function() {
}]);