所以,我想在提取的记录进行搜索:是否有简单的方法来搜索提取的记录?
p = Product.added_today # Get records by scope
# wants something like
p.search(:name => 'Clocks')
是否有容易(导轨的方式)来做到这一点(宝石或东西)?
所以,我想在提取的记录进行搜索:是否有简单的方法来搜索提取的记录?
p = Product.added_today # Get records by scope
# wants something like
p.search(:name => 'Clocks')
是否有容易(导轨的方式)来做到这一点(宝石或东西)?
您可以使用以下Rails功能来模拟这种搜索。
一个方法是使用红宝石的find_all -
q = p.find_all{ |e| e.name == 'Clocks' }
,因为这此代码使用蛮力红宝石阵列搜索,性能也不是很大。如果您期望p包含多于几十个元素,那么使用数据库查询会更好,性能更好。
尝试建立在你的范围:
Product.added_today.find(:all, :conditions => {:name => 'Clock'})
试试这个:
pa = Product.added_today
pa.select{|p| p.name == "Clocks"}
不,我想搜索已经提取的记录! – rbnoob 2010-10-12 10:54:12
此代码只提取你想要的。但是,如果您已经获取了行,并且现在想要选择一些记录,则我能想到的唯一方法就是遍历所有记录。检查amba的答案。 – Faisal 2010-10-12 11:08:02