问题标签 [geokit]

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.

0 投票
1 回答
644 浏览

geokit - RoR - Geokit 插件:为什么 Location.find 给我一个空数组?(位置是“acts_as_mappable”的模型)

我已经安装了 geokit gem 和 geokit-rails 插件。我配置了插件,如下所示:http: //github.com/andre/geokit-rails。然后我生成了一个新模型——Location,它看起来像这样:

class Location < ActiveRecord::Base
acts_as_mappable :default_units => :kms
end

和一个控制器: 我还在我的数据库中设置了一个包含 lng 和 lat 列的 Locations 表,并将我的谷歌密钥放在 /config/initializers/geokit_config.rb 现在,尽管@a 给了我来自 YahooGeocoder 的正确结果(我也可以使用 GoogleGeocoder),@b 是一个空数组。我知道@a 是使用 Geokit gem 生成的,@b 是使用 Geokit-rails 插件生成的,所以问题肯定与插件有关。当我使用我得到“成功:错误”......我在这里做错了什么?
class TestController < ApplicationController
include GeoKit::Geocoders
include GeoKit::Mappable
def test1
@a=Geokit::Geocoders::YahooGeocoder.geocode 'Kaohsiung City, Taiwan' @b=Location.find(:all, :origin => '100 Spear st, San Francisco, CA', :within => 5)
end
end


@c=IpGeocoder.geocode('85.128.202.178')

0 投票
2 回答
480 浏览

ruby-on-rails - Rails geokit缓存

你将如何缓存 GeoKit 请求?

这对我不起作用...

网址:http: //github.com/seebq/geokit-gem

0 投票
2 回答
1521 浏览

ruby-on-rails - Rails:从 MySQL 转换为 PostGres 会破坏 Geokit 距离计算?

我最近将我的数据库从 MySQL 切换到 PostGres。我也使用 GeoKit。当我使用已经播种的新数据库启动我的应用程序时,我收到以下错误:

任何人都知道为什么这会打破现在?我知道 GeoKit 仍然有效,因为在为数据库播种时,它仍在按票证的模型中执行地理编码,它只是无法正确进行距离计算。

0 投票
1 回答
1604 浏览

ruby-on-rails - Geokit 距离计算异常

我正在使用 Geokit 插件来计算 current_user 和其他用户之间的距离(地理编码实际存储在 Profile 模型中)。

出于测试目的,我创建了两个用户,一个在明尼苏达州明尼阿波利斯,一个在明尼苏达州圣保罗。我使用 Geokit gem 在 IRB 会话中对 Profiles 的 lat/lng 对进行地理编码。

我更改了索引视图以列出每个配置文件的名称、位置和纬度/经度对。这些值与数据库中的值匹配。

我更改了索引视图以显示 current_user 的 lat/lng 对。我作为每个用户进行了身份验证,以确保 current_user 的 lat/lng 对符合预期。它做了。

我向 Profile 模型添加了一个名为 ll 的实例方法,以将 lat/lng 字段作为 LatLng 对象返回:

我更改了 ProfileController 的 Index 操作中的查询来计算每个用户与 current_user 之间的距离:

最后,我更改了 Index 视图以显示 current_user 和每个单独用户之间的距离:

当我作为用户 A (44.9799654,-93.2638361) 进行身份验证时,距离计算是正确的:

A (44.9799654,-93.2638361) - 0.0 英里 B (44.9444101,-93.0932742) - 8.7 米

但是,当我以用户 B (44.9444101,-93.0932742) 身份进行身份验证时,距离计算不正确:

A (44.9799654,-93.2638361) - 32.8 英里 B (44.9444101,-93.0932742) - 41.1 英里

我能够验证“原始”纬度/经度对之间的距离计算:

我无法解释正在发生的事情。任何想法,将不胜感激。

0 投票
1 回答
381 浏览

ruby-on-rails - Will_paginate 和 geokit 不当行为(双重查询)

我正在使用 will_paginate 对我的 geokit 搜索结果进行分页。但是,该代码有效,但是,在查看日志时,使用以下 will_paginate 调用时,它确实使 geokit 查询加倍:

这是按预期工作的原始非分页调用(单个查询):

以下是使用第一次 will_paginate 调用时的日志输出:

如您所见,KML/XML 和 SQL 查询翻了一番。知道发生了什么以及如何解决它吗?谢谢!

-托尼

0 投票
1 回答
294 浏览

ruby-on-rails - 使用 geokit 的具有地理编码功能的应用程序的数据库布局

我正在开发一个房地产网络目录,并希望使用 geokit gem 对每个广告进行地理编码。我的问题是,如果我想按国家、所选国家的城市、行政区域或所选城市最近的地铁站进行搜索,那么从性能点来看,最好的数据库布局是什么。可用的国家、城市、行政区域和地铁站应由目录管理员定义,并且必须通过地理编码进行验证。

我想出了单表:

最终地理位置是地址,它包含在地图上放置房地产广告标记的所有必要信息。但我仍然坚持搜索功能。

任何帮助将不胜感激。

0 投票
1 回答
62 浏览

ruby-on-rails - 为 Rails 插件设置测试目录

我开始创建一个 Rails 插件,其中包含 Controller 和 Model 的一些类和实例方法。我首先尝试为模型设置测试。

在我的测试目录中添加一个模型目录。但我注意到 - 我需要我的模型的 geokit-rails 插件才能“acts_as_mappable”

如何将插件放入测试目录?我尝试将其复制到 /test/plugins/geokit-rails 并将其包含在我的 test_helper 中?

我从插件中得到一个错误

有什么建议么?

0 投票
2 回答
3610 浏览

ruby-on-rails - 在 Rails 中组合条件数组

我正在使用 Rails3 beta、will_paginate gem 和 geokit gem & plugin。

作为 geokit-rails 插件,似乎不支持 Rails3 范围(包括 :origin 符号是问题),我需要使用 .find 语法。

代替范围,我需要以数组格式组合两组标准:

我有一个默认条件:

我可能需要将以下条件之一添加到默认条件中,具体取决于 UI 选择:

生成的查询类似于:

问题:

  1. 有没有一种简单的方法来组合这两个条件数组(如果我的措辞正确的话)
  2. 虽然它不会导致问题,但有没有一种 DRYer 方法来创建这些老化的桶?
  3. 有没有办法将 Rails3 范围与 geokit-rails 插件一起使用?

谢谢你的时间。

0 投票
1 回答
917 浏览

ruby-on-rails - 在 Rails 中对 IP 地址进行地理编码

我有 GeoKit 设置,总的来说我对它非常满意。

但我最近尝试使用它对 IP 地址进行地理编码,它的默认结果(由 hostip.info 提供,看起来像)似乎不太准确或不完整。有没有其他人因此而有不好的结果?

有没有更好的方法在 Rails 中对 IP 进行地理编码?

0 投票
6 回答
6848 浏览

ruby-on-rails - Geokit 和导轨 3

我正在使用带有 rails 3 的 geokit gem 和插件。似乎它们存在一个已知问题,可以在此处查看http://github.com/andre/geokit-rails/issues#issue/15

现在,我尝试遵循底部提供的解决方案。我将该函数定义粘贴到文件末尾,就在acts_as_mapable 上方,就在第一次调用它之后,但每次都没有发生任何事情。

知道还能做什么吗?

谢谢