好的,所以我是Ruby和Rails的新手,我正在尝试做我认为被称为嵌套关联的事情(如果这是错误的术语,请纠正我)。我目前有一个用户模型和一个域模型,我在两者之间设置了多对多关联(使用has_many:through),这样可以正常工作。
我现在想扩展它以允许每个用户每个域一个角色(例如,User1是Domain1的成员,并且具有“Admin”角色)。我已经设置了一个带有单个字段(名称:字符串)的角色模型,并创建了三个角色。我还在连接表(成员资格)中添加了一个role_id列。我期望(这可能是问题)能够使用
user1 = User.find(1)
user1.domains.first
=> <some domain object>
user1.domains.first.role
=> <some role object>
但是这会返回一个未定义错误的方法。
谁能告诉我我在这里没有掌握的内容?
看到我的模型类答案 0 :(得分:0)
您在domain
和role
之间没有关系,这就是您在尝试使用user1.domains.first.role
时收到错误的原因。