当你没想到它时,你有一个零对象!您可能期望一个Array实例

时间:2012-03-09 17:54:44

标签: ruby-on-rails mongodb

我写的如下

def search

   cuisine=Settings.allcuisines

 begin 
 @orgs = getSearch(params[:lat], params[:lon],params[:zip], params[:dist],   cuisine,params[:num_results])
  respond_to do |format|
    format.html {render action: "index"}
    format.json { render json: @orgs }
  end
    messg="success"
    code="0"
    results={:message=>messg,:code=>code}
    resul=Results.new(results)
     resul.save
  rescue Exception => exc
   messg=exc.message
   code="1"
   results={:message=>messg,:code=>code}
   resul=Results.new(results)
     resul.save
   respond_to do |format|
    format.html {render action: "index"}
    format.json { render json: @orgs }
   end

end

我收到错误:

  

当你没想到它时,你有一个零对象!你可能有   期待一个Array的实例。评估时发生错误   nil.each

为什么会这样?

1 个答案:

答案 0 :(得分:1)

你可能在你的视图中调用@ orgs.each而@orgs是零。您可以尝试将迭代器嵌套在:

- unless @orgs.nil?
  - @orgs.each do |o|
    blah