AngularJS-Services (Update/Speichern)
Neu AngularJS und versuchen zu begreifen, Rahmen, und zu versuchen, erstellen Sie einen grundlegenden CRUD-app. Ich kann nicht scheinen, um herauszufinden, was erforderlich ist, die zum Aktualisieren eines vorhandenen Datensatzes. Hier ist mein service:
angular.module('appServices', ['ngResource']).
factory('App', function ($resource) {
var Item = $resource('App/:AppId', {
//Default parameters
AppId: '@id'
}, {
//Actions
query: {
method: 'GET',
isArray: true
},
getById: {
method: 'PUT'
},
update: {
method: 'POST'
}
});
return Item;
});
Ich einen basic Erhalten Sie alle Abfrage-und getById zum füllen einer form Bearbeiten, aber das ist, wo ich stecken geblieben bin. Hier ist der Beispiel-code für getById
$scope.apps = App.query();
$scope.getEdit = function(AppId) {
App.getById({id:AppId}, function(app) {
$scope.original = app;
$scope.app = new App(app);
});
};
$scope.save = function() {
//What type of information should go here?
//Do I need to make changes to the appServices?
};
Ich Schätze, ich bin nur nicht sicher, was als Nächstes über die Aktualisierung der vorhandenen Informationen, oder wie der "app" - Objekt übergeben bekommt, um die API, kann jemand mich in die richtige Richtung, oder zeigen Sie mir eine kurze update-Methode?
InformationsquelleAutor Logan W | 2012-08-20
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies ist ein wirklich chaotisch Umgang Speichervorgänge in eckig. Für die one - man sollte nicht mit PUT-Operationen, der für retrieval-Anfragen und-zweitens - dies alles ist bereits integriert zu eckig. Siehe unten.
Was ich hier mache ist das abrufen von einem "Item" und dann sofort speichern Sie es mit neuen Daten, sobald es zurückgegeben wird.
Angular JS bietet einen Stapel von Zahlungsausfällen bereits, einschließlich der Abfrage, speichern, löschen/delete, get.etc. Und für die meisten RESTful APIs, sollten Sie wirklich nicht brauchen zu viel hinzuzufügen, wenn überhaupt. Siehe die Ressource-Dokumentation für weitere Informationen, insbesondere die Informationen über die Standardwerte: http://docs.angularjs.org/api/ngResource.$Ressource
Zusätzlich, sobald Sie in den Griff zu bekommen, die Sie verwenden möchten, können Sie $sparen für create/update-Operationen, aber mit POST/PUT (RESTful-Konventionen). Wenn Sie das tun, siehe mein Artikel, den ich schrieb vor nicht allzu langer Zeit: http://kirkbushell.me/angular-js-using-ng-resource-in-a-more-restful-manner/
InformationsquelleAutor Oddman
Nachdem ich ein wenig mehr Forschung, und die Beurteilung von Daniel ' s link (danke). Ich habe es funktioniert.
Controller-Methode:
Service Factory:
InformationsquelleAutor Logan W