Ответ 1
Если вы посмотрите в Backbone.Sync документации, в нем говорится, что вы должны отвечать на запросы с атрибутами, которые были изменены на сервер.
Итак, чтобы ответить на ваши вопросы:
-
Запрос JSON для
model.save
должен вернуть атрибуты, которые были изменены как часть сохранения. В случае создания это будет целая модель; в случае обновления измените только поля. (Или, если вы ленивы и не возражаете обновлять всю модель клиентской стороны, вы можете просто вернуть всю модель).Таким образом, приемлемым ответом будет
{ 'name' : 'a name', 'email' : '[email protected]' }
-
Fetch должен просто вернуть модель в форме JSON. Таким образом, тот же самый пример, который я использовал для
model.save
, будет работать. -
Я не совсем уверен, но я не думаю, что Backbone проверяет возвращенные данные из запросов на удаление, чтобы вы могли возвращать что-либо, если это не ошибка HTTP. Согласно @a.real.human.being ниже, пустой ответ также вызывает ошибки. Поэтому возвращение 200 с "ОК" в теле (или аналогичном) кажется разумным планом.