2015-06-03 59 views

回答

2
var Roles = Backbone.Collection.extend({ 
    url: function(){ 
     var url = '/api/users/' + this.user.id + '/roles'; 
     return url; 
    } 
}); 

這是最起碼的填充userModel.roles屬性集合中獲取每一個模型,假設你的用戶模型是在角色集合的屬性。我會考慮將抽象關係轉化爲AssociatedModelAssociatedCollection,或者查看many Backbone plugins available

1

許多骨幹屬性可以採取一個函數,而不是一個字符串,它允許您在需要時更靈活。如果您在documentation看一下例子爲url你會看到那

// Or, something more sophisticated: 

var Notes = Backbone.Collection.extend({ 
    url: function() { 
    return this.document.url() + '/notes'; 
    } 
}); 

在你的情況的一個例子,你可能會想要像下面

url: function() { 
    //myUserID should probably be coming from your model or somewhere 
    return 'api/users/' + myUserID + '/roles/'; 
}