Częściowe aktualizacje (aka PATCH) używające usługi opartej na $ zasobów?

Budujemy aplikację internetową wykorzystującą Django / TastyPie jako dostawcę usług zaplecza REST i budując interfejs frontowy oparty na AngularJS, wykorzystując wiele usług opartych na zasobach do obiektów CRUD na serwerze. Jak dotąd wszystko działa świetnie!

Ale, chcielibyśmy zmniejszyć ilość przesyłanych danych, gdy chcemy zaktualizować tylko jedno lub dwa zmienione pola na obiekcie.

TastyPie obsługuje to za pomocą metody HTTP PATCH. Zdefiniowaliśmy metodę .diff () na naszych obiektach, dzięki czemu możemy określić, które pola chcemy wysłać, gdy wykonamy aktualizację. Po prostu nie mogę znaleźć żadnej dokumentacji dotyczącej sposobu definiowania / implementowania metody na obiekcie instancji zwróconej przez $ resource, aby zrobić to, co chcemy.

To, co chcemy zrobić, to dodać inną metodę do instancji obiektu (jak opisano w dokumentacji Angular.js tutaj) lubićmyobject. $ partialupdate () które:

Wywołaj naszą funkcję .diff (), aby określić, które pola wysłać, a następnieUżyj żądania HTTP PATCH, aby wysłać tylko te pola na serwer.

Jak dotąd nie mogę znaleźć żadnej dokumentacji (ani innych postów SO) opisującej, jak to zrobić, ale naprawdę doceniam wszelkie sugestie, które każdy może mieć.

Dziękuję Ci.

questionAnswers(3)

yourAnswerToTheQuestion