2017-02-06 1 views
2

У меня есть список идентификаторов записей, например [1, 20, 20].Каков правильный способ удаления нескольких записей (массовое удаление) с использованием данных Ember?

Запросить каждый элемент и удалить их, кажется, неэффективность.

store.findRecord('post', 1).then(function(post) { 
    post.deleteRecord(); 
    post.save(); // => DELETE to /posts/1 
}); 

Я хотел бы удалить несколько записей одновременно. Каков правильный способ сделать это с использованием данных Ember?

+4

Я думаю, что единственный способ - создать бэкэнд-сервис для массового удаления и создать способ в адаптере для вызова этого бэкэнд-сервиса –

+0

Возможный дубликат [Ember: удаление моделей по одному запросу] (http://stackoverflow.com/questions/25113960/ember-remove-models-in-one-request) –

ответ

2

Основная проблема заключается в том, что нет четкого (или обычного) способа массового удаления через семантику REST. Обычный метод DELETE HTTP направлен на URL-адрес, который идентифицирует один ресурс. Как упоминает Эбрахим в комментариях, бэкэнд-сервис, который делает массовое удаление, вероятно, является лучшим подходом.

После успешного завершения массового запроса следующая проблема заключается в удалении этих удаленных элементов из хранилища данных Ember. Простым (но неэффективным) решением было бы выгрузить все записи модели из магазина через store.unloadAll(modelname)

Смежные вопросы