我有一些代码,我得到一个空对象。
@results = PollRoles.find(
:all,
:select => 'option_id, count(*) count',
:group => 'option_id',
:conditions => ["poll_id = ?", @poll.id])
这是编写查询的正确方法吗?我想要一个具有选项ID的记录集合以及在PollRoles模型中找到该选项id的次数。
编辑:这就是我在迭代结果的方式:
<% @results.each do |result| %>
<% @option = Option.find_by_id(result.option_id) %>
<%= @option.question %> <%= result.count %>
<% end %>
答案 0 :(得分:0)
您想使用this function来执行此类操作
PollRoles.count(:all, :group => 'option_id')
应该每option_id
返回一个哈希映射,其中包含与之匹配的记录数。
答案 1 :(得分:0)
你对此有何看法:
PollRoles.find(:all,:conditions =&gt; [“poll_id =?”,@ poll.id])。collect {| p | p.option_id}