两个模型之间的关系模型:空值

时间:2012-07-01 21:47:17

标签: backbone.js backbone-relational

我想使用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值?

1 个答案:

答案 0 :(得分:0)

你在任务上的关系应该是这样的:

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

(您希望它使用creator_id进行关联,但从未告诉过它。)