Ruby on rails 当您没有';我没料到!您可能希望有一个数组实例
我写的如下Ruby on rails 当您没有';我没料到!您可能希望有一个数组实例,ruby-on-rails,mongodb,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 {
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
我得到一个错误:
你有一个零的对象,当你没有想到它!你可能有
应为数组的实例。评估时出错
每人零
为什么会发生这种情况?您可能正在调用@orgs.each,在您的视图中,@orgs为零。您可以尝试将迭代器嵌套在:
- unless @orgs.nil?
- @orgs.each do |o|
blah
实际错误不在该代码中。它要么在它调用的方法中,要么在您的view.def getSearch(lat、lon、zip、dist、courine、num_results、unit=:mi)num_results | |=10 unit | |=:mi如果zip.strip.empty?Org.where('content.attribs.name'=>'courine','content.attribs.value'=>courine.geo_near([lon,lat],:max_distance=>dist,:sphereal=>true,num:num_results)end if(lat.strip.empty?| | lon.strip.empty?)Zipcode.where('Zipcode'=>zip)方法如上所述,视图为您可以单击“编辑”在您的问题下方添加额外信息
:)
。是的,我在视图中这样使用,