ruby-on-rails - Rails、Geocoder 和附近

标签 ruby-on-rails ruby

我在尝试根据与用户的接近程度显示某些位置时遇到一个小问题。在我的 Controller 中我有这个:

  if User.find(current_user)
    @user = User.find(current_user)
    @locations = Location.near(params[:latitude => @user.latitude, :longitude => @user.longitude], 50, :order => :distance)
  end

用户存储了纬度和经度。我想我在 Location.near 行中没有得到正确的参数,但我不知道它们应该是什么。

如有任何帮助,我们将不胜感激。

干杯!

最佳答案

让我们稍微重写一下,current_user 应该已经设置好了,不需要调用 User.find。然后看起来你可以通过 lat,long 作为一个数组

 @locations = Location.near([current_user.latitude, current_user.longitude], 50, :order => :distance)

http://railscasts.com/episodes/273-geocoder

http://www.rubygeocoder.com/

https://github.com/alexreisner/geocoder (查看自述文件)

关于ruby-on-rails - Rails、Geocoder 和附近,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11463940/

相关文章:

ruby - 使用 nokogiri 或 mechanize 解析使用 JavaScript 呈现的电子邮件

ruby-on-rails - 多个数据库连接 : schema_migrations is looked up in the wrong database

ruby-on-rails - ActiveRecord 其中返回 ActiveRecord::Relation

ruby - 如何使 Ruby 的 Find.find 遵循符号链接(symbolic link)?

ruby - ruby 函数定义中的问号是什么意思?

mysql - Rails DB rake 任务运行但永不退出

ruby-on-rails - Redis 与 Rails 中的类变量

sql - has_many :through 的索引

mysql - 如何在Rails中仅从mysql的ActiveRecord集合中删除对象?

ruby - 捕获从 Ruby 内部运行的交互式外部命令的输出