Rails在范围表中找到一个特定的条目

| 刚接触Rails。...仍在尝试掌握所有“方法” 表称为历史记录。
   @compa = History.scoped(:limit => 10,:conditions => {:name => \"IBM\"}, :order => \"closedate ASC\")
现在,我想查找表的@compa子集是否包含条目,其中closedate =特定日期。我尝试了各种方法,但是似乎没有任何效果。 例:
if (@compa.has_value?(tmp))
不起作用。 我应该处理子集,还是回到表中并创建新的作用域?我该如何处理子集...我肯定缺少一些东西。
已邀请:
因此,您需要以下内容:
if(@compa.include?(tmp))
要查看@compa是否具有值
tmp
。 但是,“ 4”包含非封闭属性。因此,您需要:
@compa.find{|o| o[\'closedate\'] == tmp}
如果不包含该值,则将返回nil,否则将返回具有
closedate
等于
tmp
的对象。 但是,为什么不使用SQL来处理此问题呢? 由于ѭ4是ActiveRecord关系(因为您称为作用域),因此您可以通过执行以下操作来查询更多内容:
@compa.where(:closedate => tmp).exists?
链接: 数组#包含 可枚举 存在吗?

要回复问题请先登录注册