Mam aplikację RESTful
z Laravel 4
i Angular JS
.
W moim laravel Controller,
public function index() {
$careers = Career::paginate($limit = 10);
return Response::json(array(
'status' => 'success',
'message' => 'Careers successfully loaded!',
'careers' => $careers->toArray()),
200
);
}
A kątowa skrypt,
var app = angular.module('myApp', ['ngResource']);
app.factory('Data', function(){
return {
root_path: "<?php echo Request::root(); ?>/"
};
});
app.factory('Career', [ '$resource', 'Data', function($resource, Data) {
return $resource(Data.root_path + 'api/v1/careers/:id', { id: '@id'});
}]);
function CareerCtrl($scope, $http, Data, Career) {
$scope.init = function() {
$scope.careers = Career.query();
};
}
Oto jestem trochę zdezorientowany do obsługi danych odpowiedzi przypisać do zmiennej zakres, teraz jestem coraz pustą tablicę []
w $scope.careers
. A także jaki sposób można obsłużyć sukcesów i błędów, aby pokazać niektóre komunikaty jak na poniższym normalnego $http service
,
$scope.init = function() {
Data.showLoading(); // loading progress
$http({method: 'GET', url: Data.root_path + 'api/v1/careers'}).
success(function(data, status, headers, config) {
Data.hideLoading();
$scope.careers = data.careers.data;
}).
error(function(data, status, headers, config) {
if(data.error.hasOwnProperty('message')) {
errorNotification(data.error.message);
} else {
errorNotification();
}
$scope.careers = [];
});
};
Zobacz moją prośbę w konsoli przy użyciu $ zasobu.
Dzięki, zaoszczędzisz mój czas ... – devo
samo tutaj walczyłem o godziny – Awena