partial只能显示find all查出来的记录?

用partial显示@problems,代码如下
view:
<%= render :partial => 'problem',:collection => @problems %>

contoller:
@problems=Problem.all
--这时view正常显示出问题列表
contoller代码改成
@problems=Problem.find(:first)
或者其他查询条件 @problems=Problem.find_title("问题1")

view显示报错:
undefined method `each' for #Problem:0x1bff2d0

会调用each方法,一条的话会报错,或者你可以<%= render :partial => 'problem' %>
partial中自己写个<% (@problems || []).each do |problem| %>就没问题了

<%= render :partial => 'problem',:collection => @problems %>
你这边是把@problems传递到partial的,作为一个集合,在页面里会遍历这个集合,你改为查询一条记录,当然会报错了