[英]How do you get Ember Data to recognize that the server is returning IDs for hasMany relationships?
[英]How do you update dual/inverse hasMany relationships with Ember Data models where async is true?
我的Ember應用程序中有兩個簡單的模型,它們的工作方式如下:
App.Book = DS.Model.extend({
tags: DS.hasMany('tag')
});
App.Tag = DS.Model.extend({
books: DS.hasMany('book', { async: true })
});
用戶可以通過我們的UI輕松地將標簽添加和刪除到給定的書中。 例如,用戶刪除標簽時運行的代碼是:
book.get('tags').removeRecord(tagToRemove);
book.save();
在從書中刪除標簽時,這樣做效果很好。 但是,標簽模型本身仍引用該書。 換句話說,逆關系不會自動更新。
編輯:
在執行了JS Bin( http://jsbin.com/ucanam/1574/edit )之后,似乎標簽的books
屬性沒有自動更新的原因是由於我通過了{ async: true }
選項。 就是說,我不確定我是否真的有能力刪除該選項,因為標簽可能包含數百萬本書,並且我不想將所有標簽都加載進去。
有什么辦法讓事情保持原樣?
Ember Data可以“神奇地”從兩者中刪除的唯一方法是刪除記錄。 如果僅從其他記錄之一中刪除該記錄,從技術上講,Ember Data不是肯定的,則您不希望從其他記錄到該記錄之間仍然具有其他關系。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.