我有以下型号:一个多对多的assoc命令找到条件
project.rb
has_many :tasks
task.rb
belongs_to :project
has_many :assignments
has_many :users, :through => :assignments
用户。 rb
has_many :assignments
has_many :tasks, :through => :assignments
assignment.rb
belongs_to :task
belongs_to :user
因此,例如: Project.first.title#=> “曼哈顿” Project.first.tasks.map(&:名称)#=> ['查找科学家','查找钱','查找位置'] Project.first.tasks.first.users.map(&:full_name)#=> ['James Maxwell','Evariste Galois','Jules Verne ']
我的第一个问题是: 我怎样可以找到所有的人可能与符号的名字在一次机会PROC,我想:
Project.first.tasks.users.full_name #=> AND FAILED
Project.first.tasks.map(&:users).full_name #=> AND FAILED
Project.first.tasks.map(&:users).map(&:full_name) #=> AND FAILED
任何想法?
我认为这以下问题可能是在同一个球场:
我可怎么办项目的发现与搜索用户的任务“FULL_NAME”的属性条件?
例
Project.all(:include => {:tasks => :users}, :conditions => ['tasks.users.full_name LIKE ?', query]) #this failed
我认为这个问题是在 'tasks.users'。
谢谢大家,祝你感恩幸福!
哦,我明白了,所以我其实不需要做 :conditions => ['tasks.users.full_name喜欢?',查询],因为用户包含允许1)用户使用排序“独立”,2)在查询时适当地限定任务范围。 搜索项目任务的所有用户全名可行! - 是否有计算机科学/数学偏好,为什么我们可以链接多对多的关联以产生一些“总体”属性?像 Project.first.tasks.users.map(&:full_name) 我可以想象情况下人们需要这个 谢谢雷达。 Plz认为案件结案。节日快乐! – 2009-11-27 00:07:43