我阅读了所有帖子,但没有找到解决方案。我使用地理编码器发出一个.near请求,它适用于一个控制器,但是对于另一个控制器没有用这个错误:错误的参数数量(3个用于1)。
以下是两行:
这个在我的school_controller.rb
中不起作用@schools_premium = School.where(:subscription.exists => true)
@schools_aside = @schools_premium.near([params[:latitude], params[:longitude]], radius, units: :km).limit(3)
我也尝试过:@ school.coordinates.reverse而不是params [:latitude] ..
但是这个(在home_controller.rb中):
@schools = School.near([params[:latitude], params[:longitude]], radius, units: :km).limit(30)
我的学校模型上有geocoded_by
和reverse_geocoder
。
有人有同样的问题吗?
答案 0 :(得分:1)
您也可以通过这种方式实现:
@schools = School.near([params[:latitude], params[:longitude]], radius, units: :km).limit(30)
@schools_aside = @schools.premium_school
School.rb(模特)
scope :premium_school, -> {where("subscription = ?", true)}