Я задал этот вопрос раньше для угловых ресурсов, и я получил его работу, но теперь я перешел к использованию restangular.
У меня есть вид /models
, который получает данные от storage/models.json
, и я установил это, чтобы нормально работать с restangular.
Теперь я хочу, чтобы иметь вид такой, как /models/:modelId
, что бы получить данные из storage/individual/:modelId.json
с: ModelID быть соответствующий Id модели, очевидно, и я с настройкой с restangular неприятностей. Я получил его работу с угловыми ресурсами, но у restangular есть много функций, которые я получу в будущем, поэтому я решил сделать переключатель.
Может кто-нибудь указать мне в правильном направлении? Страница GitHub на самом деле не говорит о routeParams, и я не могу найти примеры, делающие то, что я пытаюсь достичь, хотя я, возможно, не обратил на это внимания.
ModelsCtrl.js:
'use strict';
angular
.module('swoleincApp')
.controller('ModelsCtrl', ['ModelsService', '$scope', ModelsCtrl]);
function ModelsCtrl(ModelsService, $scope) {
ModelsService
.then(function(allModels) {
$scope.models = allModels;
});
}
ModelsService.js:
'use strict';
angular
.module('swoleincApp')
.factory('ModelsService', ['Restangular', ModelsService]);
function ModelsService(Restangular) {
return Restangular
.service('app/storage/models.json')
.getList();
}
Две приведенные выше примеры хорошо работают вместе и дать мне желаемых результатов.
Я пытаюсь сделать что-то вроде этого для второго маршрута, но я получаю 404, потому что «: modelId» используется в URL-адресе в отличие от фактического идентификатора модели.
IndividualCtrl.js:
'use strict';
angular
.module('swoleincApp')
.controller('IndividualCtrl', ['Individual', '$scope', IndividualCtrl]);
function IndividualCtrl(Individual, $scope) {
Individual
.then(function(individual) {
$scope.model = individual;
});
}
IndividualService.js:
'use strict';
angular
.module('swoleincApp')
.factory('Individual', ['Restangular', IndividualService]);
function IndividualService(Restangular) {
return Restangular
.one('storage/individual/:modelId.json')
.get();
}
Я пробовал это и просто получаю ошибки. Либо я внедряю неправильно, либо неправильно понимаю. Например,/models view загружает все модели. Каждая модель имеет ссылку на/models /: modelId с: modelId является строкой, которая ведет к их .json-файлу. Я хочу, чтобы при щелчке этой ссылки в представлении/models /: modelId загружался файл storage/individual /: modelId.json, используемый для данных. Я легко настраивал это с помощью углового ресурса с помощью routeParams, но не смог найти примеры для рестанга. – Lansana