Sinatra의 JSON을 통해 MySQL 데이터베이스의 정보를 얻기 위해 Angular j의 부분 '다운로드'를 얻으려고합니다. 아래 코드를 작성했지만 작동하지 않습니다. app.rb의 라우팅이 잘못되었거나 각도가 컨트롤러인지 궁금합니다.Sinatra에 Angular JS 호출이 데이터를 반환하지 않음
이 온라인에서 관련 자습서를 찾을 수 없기 때문에 누군가 내가이 일을 도와 준다면 환상적 일 것입니다. 많은 감사합니다. 파셜에서 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
에서
은/downloads.html
JS에서<p>Manage downloads</p>
<ul ng-controller="MyCtrl1">
<li>ID: {{download.title}}, Name: {{download.downloadID}}</li>
</ul>
은/
//'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() {
}]);
'그것이 실제 오류 설명하지 working' 아니다. 또한 app.rb가 작동하는지 테스트하는 것이 매우 쉽습니다. 이미 호출 결과를 기록한 것입니다. – dirkk
puts는 nil을 반환하므로 API가 데이터를 반환하지 않는 것일 수 있습니다. puts를 반전 해보고 app.rb에서 반환하십시오. – MrRuru
죄송합니다. 작동하지 않는 것이 설명 적이 지 않습니다. 기본적으로 데이터를 반환하지 않으며 오류가 어디에 있는지 잘 모르겠습니다. –