2012-07-01 135 views
3

我想使用backbone-relational來建立兩個模型UserTask之間的關係。
我想每個Task得到User模型。
兩種模式之間的關係如下:兩個模型之間的關係模型:無效值

taskModel.creator_id = userModel.id 

這裏是我的代碼(1)(2)

的問題是以下(3):
當我嘗試獲取我得到的任務模型爲attributes.user空值。


(1)

// TaskModel 
var Task = Backbone.RelationalModel.extend({ 

    relations: [ 
     { 
      type: 'HasOne', 
      key: 'user', 
      relatedModel: User 
     } 
    ], 

    urlRoot: 'url_get_tasks' 
}); 

(2)

// UserModel 
var User = Backbone.RelationalModel.extend({ 

    urlRoot: "url_get_users" 

}); 

(3)

user = new User(); 
user.fetch(); 
console.log(user.attributes); // {id: 1, .....} 

task = new Task(); 
task.fetch(); 
console.log(task.attributes); // {id: 12, creator_id: 1, user: null} ??? 

爲什麼task.attributes.user的值爲null

回答

0

你在工作關係應該是這樣的:

{ 
     type: 'HasOne', 
     key: 'user', 
     keySource: 'creator_id', 
     relatedModel: User 
    } 

(你希望它使用creator_id爲聯想,但從來沒有告訴它。)