Переопределение методов сохранения в Backbone для настраиваемого сервера без RESTful - PullRequest
1 голос
/ 11 декабря 2011

Я создаю интерфейс на основе Backbone.js поверх пользовательского приложения на основе SharePoint, которое использует SOAP для связи (я использую превосходную библиотеку jPSuvices SPServices для связи с веб-службой). Из того, что я знаю, модели Backbone используют архитектуру REST для извлечения и обновления данных.

Итак, если мне нужно настроить операции CRUD, какие методы модели я должен переопределить? Есть ли пример скелета, который я могу использовать?

Ответы [ 3 ]

2 голосов
/ 22 декабря 2011

SharePoint 2010 реализует интерфейс REST, и вы можете использовать этот интерфейс для выполнения операций CRUD в SharePoint.

На этой странице вы можете найти больше информации.

Коллекции магистралей нужно только указать правильный URL-адрес и простую функцию разбора.

window.Products = Backbone.Collection.extend ({
    model: Product,
    url: "/_vti_bin/listdata.svc/Products",
    parse: function(response) {
        return response.d.results;
    }
});
2 голосов
/ 11 декабря 2011

Вам нужно будет переопределить функцию Backbone.sync.

Вот документация: http://documentcloud.github.com/backbone/#Sync

А в качестве справки вот исходный код для функции Backbone.sync по умолчанию:https://github.com/documentcloud/backbone/blob/master/backbone.js#L1012

1 голос
/ 24 декабря 2011

Если вы используете SharePoint 2010, вы можете рассмотреть возможность использования интерфейса SharePoint REST (ListData.svc), который довольно легко подключить к Backbone. Вам нужно будет предоставить собственные методы parse () и sync ().

Я написал плагин Backbone для SharePoint, который вам может пригодиться. Он предоставляет полный набор элементов CRUD для SharePoint на основе этого интерфейса REST. В нем показано, как расширить модель и коллекцию Backbone и использовать собственные функции sync () и parse () для простой работы с элементами и списками SharePoint.

Используя этот плагин, вы можете кодировать свой доступ к SharePoint следующим образом:

var Contact = Backbone.SP.Item.extend({
    site: '/teamsite',
    list: 'Contacts'
});

var contact = new Contact({LastName: "Delaney"});

var contact.save();

Вы можете найти плагин на GitHub: https://github.com/lstak/Backbone.SharePoint

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