我必须计算查询返回的结果数。我知道有一个 count 方法可以计算返回的结果数,但它不起作用。这是我的查询:
@oi_report = IncidentDetailsReport.find_by_case_id(id).count
我得到了这个例外:
undefined method `count' for #<IncidentDetailsReport:0x745def8>
我必须计算查询返回的结果数。我知道有一个 count 方法可以计算返回的结果数,但它不起作用。这是我的查询:
@oi_report = IncidentDetailsReport.find_by_case_id(id).count
我得到了这个例外:
undefined method `count' for #<IncidentDetailsReport:0x745def8>
您应该使用以下查询
@oi_report = IncidentDetailsReport.where('case_id=?',id).count
在这种情况下不要使用“find_by_case_id”
这将解决您的问题
显然IncidentDetailsReport.find_by_case_id(id)
返回一个类型为IncidentDetailsReport
没有方法的对象count
,这是因为在添加到查询时find_by_case_id
返回一个对象而不是关系。LIMIT 1
而不是find_by_*
你可以使用where
,比如:
IncidentDetailsReport.where(:case_id => id).count