我有以下两个模型:User
和Job
。
每个user
人只能有一份工作。和看起来像这些 (1)
:user.attributes
job.attributes
(1)
user.attributes = {
id: 1,
name: 'barName',
job_id: 5
}
job.attributes = {
id: 5,
name: 'fooJob'
}
假设我想在这两个模型之间建立关系:外键应该是job_id
(2)
User = Backbone.ModelRelation.extend({
relations: [
{
type: Backbone.HasOne,
key: 'job_id',
keyDestination: 'job',
relatedModel: User
}
]
});
使用代码 (2),结果将是:
(3)
user.attributes = {
id: 1,
name: 'barName',
job: job.attributes
}
如您所见,job_id
fromuser.attributes
丢失了。
因此,如果我向服务器发出 PUT 请求,服务器会抱怨缺少 job_id 属性。
有什么想法可以修复(3)以便将 job_id 保留在 user.attributes 中,如(4)?
(4)
user.attributes = {
id: 1,
name: 'barName',
job_id: 5
job: job.attributes
}
参考:
Paul Uithol -骨干关系