0
在我的应用程序相关联的最佳/最有效的方式,我有以下情况:轨道 - 什么是这些模型
用户belongs_to的集团 集团的has_many用户
项目belongs_to的用户 用户的has_many项目
以下情况也是如此: - 每个组将有一个BaseCase - 每个项目将有多个方案和一个BaseCase(取决于项目用户所属的组) - Scen ARIO和BaseCase是同一类型的对象(我们称之为数据) 的 - 每个场景的默认值是该组的BaseCase值,但用户可以更改这些默认值来创建特定的场景
我不知道如何有效地通过关联捕捉所有这些关系,有没有人有任何想法?感谢
这是非常有用的感谢,请问self.attributes设置的默认值的情况下?如果没有包含':through =>:xxx'的行,这也可以工作吗?谢谢 – Zakoff 2011-05-21 13:04:08
1.是的,self.attributes = self.base_case.attributes.except(:group_id,...)从base_case设置默认值 2.不需要,:through =>:xxx是必需的。它是这样生成SQL查询:'select * from场景s内部连接项目p上p.id = s.project_id内部连接组...内部连接base_cases b上b.group_id = g.id' – Anton 2011-05-21 17:38:40
感谢您采取有时间回答,不幸的是我没有代表你的投票权,但我已经接受了答案 – Zakoff 2011-05-21 18:04:12