【发布时间】:2016-06-19 08:44:58
【问题描述】:
【问题讨论】:
标签: ruby datamapper
【问题讨论】:
标签: ruby datamapper
文档:http://datamapper.org/docs/associations.html 自定义关联部分。
class User
...
has n, :peeps, 'Peep',
:parent_key => [ :handle ], # local to this model (User)
:child_key => [ :user_handle ] # in the remote model (Peep)
end
class Peep
...
belongs_to :user, 'User',
:parent_key => [ :handle ], # in the remote model (Peep)
:child_key => [ :user_handle ] # local to this model (User)
end
【讨论】:
rake db:auto_migrate rake aborted! DataObjects::SyntaxError: ERROR: there is no unique constraint matching given keys for referenced table "users"
handle 键添加唯一约束。或者假设用户 A 和用户 B 都有一个句柄 larry,那么一个具有 user_handle 值的窥视 larry 将不知道谁是它的真正用户。您应该做的只是创建另一个迁移以添加唯一约束。
user_handle实际上存在于用户表中,除此之外,我认为一切都很好。