问题标签 [rails-geocoder]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - 如何使用 google_premier 设置地理编码器?
我已阅读 geocoder gem 的文档,其中说明您可以在使用 Google Premier 时设置密钥、客户端和通道。
根据我在这里阅读的其他一些帖子,现在可以使用 API 密钥,只要您低于免费阈值,仍然可以不付费。当我们使用 Heroku 托管时,我们需要这样做,并且我们不断达到每日限额。我们不是我们自己,但如果没有任何其他标识,我们可能会达到与其他 Heroku 站点共享的 IP 标识的限制。使用密钥将有助于识别我们,从而防止我们达到极限。
但是,当我查看 Google API 的注册页面时,对于已安装的应用程序、Web 应用程序等,有一系列令人费解的客户端 ID、API 密钥和秘密。哪种组合是让地理编码器突然出现所需的组合?
ruby-on-rails - 地理编码器使用 Rails 控制台对数据库中的记录强制地理编码
我的数据库中有一个地址表已经有一段时间了,最近遇到了 Geocoder gem(甜蜜的 gem)。无论如何,我已经编辑了我的模型以包含纬度和经度列,并指定每条记录应该是什么geocoded_by
,所以现在我想简单地对表中当前具有零纬度的所有地址进行地理编码和经度。
我以为我已经用 rails 控制台解决了这个问题,只需运行以下命令:
这将返回每个条目并带有一个填充的纬度和经度列,但是在随后检查各个元素时 - 它们仍然具有零纬度和经度(即实际上并未更新记录)。我认为也许address.geocode!
会起作用,但那返回了一个NoMethodError
.
这必须是一个简单的,但似乎我只是没有足够的经验,不知道它是什么...... aaaand稍微修补一下我想通了:
解决方案
ruby-on-rails - Ruby On Rails - 地理编码器 - 接近条件
我在我的应用程序中使用 GeoCoder。现在我需要在我的数据库中搜索靠近某个位置或具有特定属性集的对象。我想在一个数据库查询中执行此操作,因为数据库真的很大。
我想要类似的东西
距离和访问属性应与 OR 组合,而不是与 AND。
有谁知道如何做到这一点?
谢谢!
ruby-on-rails - 选项卡式菜单破坏了我的地理编码器搜索功能
我对 Ruby on Rails 相当陌生,将目录类型的网站作为个人项目来学习。
在我的应用程序中,我实现了地理编码器搜索,因此用户可以搜索他们附近的地点/位置,搜索效果很好。但是当我添加选项卡式菜单来分类可用的地方类型时,它破坏了搜索。
我想我知道它为什么坏了,但不知道如何修复它。选项卡显示@schools、@restaurants 和@businesses 变量,我怎样才能让选项卡显示搜索结果而不是那些变量?这些变量应该只在没有执行搜索时显示,但它们也会在搜索执行时显示。
这是我的代码:
地方控制器:
地方索引.html.erb:
地方部分(_places.html.erb):
ruby - 使用地理编码器计算铁轨外的距离
地理编码器 gem 可以轻松计算轨道内 2 个坐标之间的距离:
如何在 Rails 之外的 ruby 脚本中实现这一点?
ruby-on-rails - Ruby Geocoder 可以在 reverse_geocode 调用中只返回街道名称吗?
如果该线包含在模型中,则地理编码器gem 将在保存时自动反转地理编码。after_validation :reverse_geocode
但是,这会导致将一长串文本保存为地址 - 格式类似于“街道名称、城市名称、县名称、州名称、邮政编码、国家名称”。
我只对这个特定项目的街道名称感兴趣,所以我想知道是否有办法修改after_validation
调用以仅保存该信息。
如果我手动进行反向地理编码,我可以访问road
结果中的值:
我可以设置自己的自定义来执行此操作,但如果已提供此after_validation
功能,我宁愿不复制功能。geocoder
或者,如果有一种完全不同的方式可以将纬度/经度转换为街道名称,我将有兴趣了解它。如果此选项也包括地址编号或地址范围,那就可以了。
ruby-on-rails - 使用 DelayedJob run_at 限制地理编码请求
我正在尝试以一种可以限制使用 DelayedJob 的地理编码 api 调用流的方式在我的 Rails 应用程序中处理地理编码。
我的意图只是对地理编码请求进行排队,因为它们对用户的时间不敏感。此外,我正在使用一个免费的地理编码 API (Nominatim),它每秒只需要一个请求。
我已经设置了地理编码器 gem,在我的用户模型中,我从用户帐户设置中获取了邮政编码(它不能为空,我已经在验证它)。
我的想法是使用 run_at 开始限制调用,但 run_at 的初始测试显示作业正在排队,但地理编码未保存完成时的值。
我在这里错过了一些非常明显的东西吗?我无法锻炼文档所说的 :geocode 方法的用途。
ruby-on-rails - 用于 Rails 的 Json、Rails 地理编码器和 Gmaps
使用 Ruby Geocoder,我可以将地址转换为纬度和经度,然后用谷歌静态地图显示。但是,当尝试将 gmap 用于 rails 时,我得到一个空白容器。
查看 - html.erb 静态地图
当尝试用 gmaps4rails 替换静态地图时,我添加了以下内容
我还在我的控制器和模型中添加了必需品。显示一个空容器,我觉得它只是没有读取数据。我玩弄了一些我读过的东西,但我可能不理解。有人可以帮助启发我吗?
ruby-on-rails - 使用地理编码器 gem 验证经度/纬度
我遵循了这个Geocoder Railscast & 我正在玩它,看看我是否可以向 Geocoder Gem 返回的经度和纬度坐标添加验证,以防用户输入不返回任何经度和纬度坐标的错误地址。
我可以使用下面的代码完成这项工作,但是当我输入正确的地址时,它会在用户第一次提交表单时出现验证错误,即使返回的经度和纬度坐标也是如此。用户第二次提交它工作的表单。
我怀疑这种情况正在发生,因为当用户提交表单时没有经度和纬度坐标,但是由于地理编码器 gem 返回了坐标,所以第二次出现。
我的代码有问题还是我应该以不同的方式处理这个问题?
模型
终端输出