Использование Backbone.Sync без конкретной модели - PullRequest
0 голосов
/ 06 декабря 2011

(Rails 3 + магистраль 0.53) Я получаю данные из своего API по URL-адресу "/ payment", и он возвращает данные различных типов платежей.

Таким образом, пользователь может, например, удалить, скажем, кредит-карточка и она синхронизируется с сервером на

"/credit_cards".

Проблема в том, что если я использую Backbone.Sync с синтаксисом

Backbone.Sync('delete', @options.credit_cards.get('id')) 

, это дает мне " Для свойства или функции "url" должна быть указана"ошибка.

Это имеет смысл, поскольку модель, например:

@options.credit_cards.get('id') 

в этом случае не существует, потому что credit_cards не хранит никаких данных.Я просто хочу сделать стандартное УДАЛЕНИЕ с Backbone.sync в стиле

"/credit_cards/:id" 

, но просто указав идентификатор (который я получаю из / платежей), а не модель (но модель / коллекция имеет URL)..)

Итак, мой вопрос: 1.) есть ли в backbone способ использовать backbone.sync без фактического сохранения данных в коллекции / модели, больше похоже на простой запрос ajax с jQuery.Пример:

Backbone.Sync('delete', "specify_a_url_here_with/#{id}"))

вместо использования смешанных запросов Backbone.Sync & $ .ajax.

2.) Это вообще имеет смысл или есть лучшая альтернатива.

Большое спасибо!Я действительно люблю ТАК!Надеюсь, вопрос не странный.Фил

Ответы [ 2 ]

0 голосов
/ 18 декабря 2011

Вы можете передать «url» и «данные» в Backbone.Sync в «options».

Backbone.sync (метод, модель, параметры) возвращает $ .ajax (params), где params.url и params.data отражают вашу модель, если вы явно не передаете их в опциях.

Итак

Backbone.sync('delete', false, {url : "/credit_cards/1", data : ''}) 

должно работать.

0 голосов
/ 06 декабря 2011

Поскольку вы пытаетесь сделать что-то более нестандартное, которое, кажется, не вписывается в поведение Backbone по умолчанию, я бы предложил вам либо переопределить функцию Sync () в вашей модели, либо определить другую функцию, где вы можетеопределите свой собственный Ajax-вызов.

Я склонен считать функции модели Backbone набором разумных значений по умолчанию, которые могут быть переопределены при необходимости, а не набором функций, с которыми вы должны жить.

Скотт

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...