我有以下情況,我認爲處理它的最好方法是使用Backbone relation
。
如果有其他解決方案,請糾正我。骨幹關係:如何把關係集合和模型?
我有一個集合(1)和一個模型(2)。
收集結果如(3)和模型結果(4)一樣。
最後,視圖應該看起來像這樣(5)。
我的問題是:
1)可能使用Backbone relation
來處理這種情況?
2)如果是,我應該如何重寫FeedsCollection
自動從UserModel
獲取所需的數據?
(1)
// FeedsCollection
var FeedsCollection = Backbone.Collection.extend({
url: "http://localhost/feeds"
});
(2)
// User Model
var UserModel = Backbone.Model.extend({
url: "http://localhost/user"
});
(3)feedsCollection結果
//feedsCollection.toJSON();
[
{id:1, message: "something one", creator_id: 100},
{id:2, message: "something two", creator_id: 101},
]
(4)的usermodel導致
userModel = new UserModel({id: 100});
userModel.fetch();
userModel.toJSON(); // {id:100, name: "jhon"}
userModel = new UserModel({id: 101});
userModel.fetch();
userModel.toJSON(); // {id:101, name: "herry"}
(5)最後認爲結果應該是這樣的:
[
{message: "something one", creator_id: 100, name: "jhon"},
{message: "something two", creator_id: 101, name: "herry"},
]
(2)意味着var UserModel = Backbone.Model.extend({}),而不是FeedsCollection?我很困惑FeedsCollection如何與UserModel相關?它們是基於屬性creator_id關聯的嗎? – TYRONEMICHAEL
@TyroneMichael,感謝您的評論,我確實更正了(2),是的,他們通過'creator_id'關聯。 'feedsCollection.creator_id = userModel.id' – js999
這是一對多|多對一的關係還是多對多的關係? (例如,用戶是否可以擁有多個供稿並且供稿有多個用戶?) – jmk2142