У меня есть модель, имеющая свойство url.
Когда я сохраняю модель, используя метод «Сохранить», она отправляет запрос на сервер.
Если связь успешна, срабатывает метод success (), а если связь не удалась, запускается функция «ошибка».
Но что, если не возникает проблем со связью, кроме случаев, когда сервер отправляет «сообщение об ошибке» из-за некоторых проверок сервера или по другим причинам?
Так как из-за проверок на стороне сервера (или других) модель не сохраняется на сервере.
Таким образом, это не должно быть сохранено в базовой модели также.
Что я должен сделать, чтобы сказать модели не сохранять, когда сервер отправляет сообщение «Ошибка обновления базы данных», и сказать, чтобы сохранить, когда я получаю «Успешно обновлено»
Я отправляю нижеприведенный ответ с сервера:
$this->response(
array(
'model'=>$model,
'status'=>$status,
'metamodel'=>array(),
'message'=>$msg (either success or fail)(my custom message)
)
);
на стороне клиента, я экономлю вот так.
model.save(attr{
success:(model,res)->
// to do when communication success
error:(model,res)->
//to do when communication fails
})
Итак, как я могу проверить, основываясь на сообщении или статусе, сервер успешно или нет?
И как я могу сказать модели не сохранять и не отменять изменения, когда сервер говорит «нет» (НЕ ВНУТРЕННЯЯ ОШИБКА СЕРВЕРА, моя пользовательская ошибка bcoz проверок или другие причины)
Кроме того, как я могу использовать метод Backbone.Sync (практический пример, связанный с моим кодом, пожалуйста)
и что это делает? (пожалуйста, укажите, была ли проблема со связью, сообщение об ошибке или внутренняя ошибка сервера)
Я могу получить доступ к «status» и «message» в методе «success», но как я могу использовать их, чтобы отменить изменения в модели.
Спасибо