ดังนั้นฉันจึงพยายามส่งการค้นหาตามตำแหน่งโดยระบุเมืองให้กับวิธี Geocoder ของฉัน Geocoder.coordinates("Miami")
แต่แอป Rails ของฉันมีข้อยกเว้นนี้:
EOFError in ListingsController#search
end of file reached
บันทึกการพัฒนาของฉันไม่ได้อธิบายสิ่งที่เกิดขึ้นจริงๆ:
และโค้ดของฉันก็ตัดและส่งข้อยกเว้นเมื่อมีการเรียก Geocoder ในคอนโทรลเลอร์ของฉัน:
def search
@favorited_listing = FavoritedListing.new
@listings = Listing.search(params[:search].downcase)
@results = Array.new
@cityCoordinates = Geocoder.coordinates(params[:city]) # <= This is where the exception gets thrown
if !params[:city].nil? && params[:city] != ""
@results = @listings.select { |listing| listing.location.distance_from(@cityCoordinates) < 50 }
else
@results = @listings
end
@listings_json = []
@coordinates = @results.map do |listing|
@listings_json << listing.as_json(:include => [:location, :pictures])
end
respond_with(@results)
end
สิ่งที่ฉันได้ลองจากโพสต์อื่นเกี่ยวกับปัญหานี้:
- การลบแคช Sprockets
rm -Rf tmp/cache/assets/development/sprockets/*
- การโคลนโปรเจ็กต์ลงในไดเร็กทอรีใหม่จาก git
สิ่งเหล่านี้ไม่ได้ผล ไม่มีใครรู้ว่าเกิดอะไรขึ้นหรือสามารถชี้ให้ฉันไปในทิศทางที่ถูกต้อง?