I m使用2.3.5版的双底.和2.3.4。
我想要做的是,寻找一种模型,确定一种比多重特性具有一定价值的价值。 我通过把所有东西连在一起来实现这一点。
User.first_name_or_last_name_or_email_like(value)
但是,在这种搜查中,有越来越多的属性,这往往很模糊。 我只想利用这种搜寻机制:
search = User.search
search.first_name_like = value
search.last_name_like = value
..
@users = search.all
因此,这是通过和(但我所希望的是)进行搜查的途径。 我找到了实现这一点的两种途径,但两者都没有工作。
第1类:
search = User.search
search.first_name_like = value
search.or_last_name_like = value
@users = search.all
代表: 正式名称——类似情况不是有效条件。 您只能使用标明范围的条件。
第2次:使用<代码>search.any
search = User.search
search.first_name_like = value
search.last_name_like = value
@users = search.any
请参见<代码>无定义方法代码>。
有什么想法? 我错过读物的正确点?
感谢你们非常受欢迎的帮助!
<<>strong>edit: time for someugly workaround:
search = User.search
search.first_name_like = value
search.last_name_like = value
User.find(:all, :conditions => search.scope(:find).gsub( AND , OR ))
工作,但肯定不是前进的道路,是没有呢?