問題タブ [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.
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 テーブルを設定し、Google キーを /config/initializers/geokit_config.rb に配置しました。 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')
ruby-on-rails - Rails:MySQLからPostGresに変換すると、Geokitの距離計算が壊れますか?
最近、データベースをMySQLからPostGresに切り替えました。私もGeoKitを使用しています。新しいデータベースがすでにシードされている状態でアプリを起動すると、次のエラーが発生します。
なぜこれが今壊れているのか誰もが知っていますか?GeoKitは、データベースがシードされたときにチケットごとにモデルでジオコーディングを実行しているため、引き続き機能することを知っています。距離の計算が正しく行われないだけです。
ruby-on-rails - ジオキット距離計算の奇妙さ
私はGeokitプラグインを使用して、current_userと他のユーザーの間の距離を計算しています(ジオコーディングは実際にプロファイルモデルに保存されています)。
テストの目的で、ミネソタ州ミネアポリスとミネソタ州セントポールに2人のユーザーを作成しました。Geokit gemを使用して、IRBセッションでプロファイルのlat/lngペアをジオコーディングしました。
インデックスビューを変更して、各プロファイルの名前、場所、およびlat/lngペアを一覧表示しました。これらの値は、データベースの値と一致します。
インデックスビューを変更して、current_userのlat/lngペアを表示しました。current_userのlat/lngペアが期待に一致することを確認するために、各ユーザーとして認証しました。しました。
llという名前のインスタンスメソッドをProfileモデルに追加して、lat/lngフィールドをLatLngオブジェクトとして返しました。
ProfileControllerのIndexアクションのクエリを変更して、各ユーザーとcurrent_userの間の距離を計算しました。
最後に、インデックスビューを変更して、current_userと個々のユーザーの間の距離を表示します。
ユーザーA(44.9799654、-93.2638361)として認証したとき、距離の計算は正しかった:
A(44.9799654、-93.2638361)-0.0マイルB(44.9444101、-93.0932742)-8.7 m
ただし、ユーザーB(44.9444101、-93.0932742)として認証した場合、距離の計算は正しくありませんでした。
A(44.9799654、-93.2638361)-32.8マイルB(44.9444101、-93.0932742)-41.1マイル
'raw' lat/lngペア間の距離計算を検証できました。
何が起こっているのか説明するのに途方に暮れています。任意のアイデアをいただければ幸いです。
ruby-on-rails - Will_paginate と geokit の誤動作 (二重クエリ)
geokit の検索結果のページ付けに will_paginate を使用しています。コードは機能しますが、ログを見ると、次の will_paginate 呼び出しを使用すると geokit クエリが 2 倍になります。
これは、期待どおりに機能する元のページ分割されていない呼び出しです (単一のクエリ)。
以下は、最初の will_paginate 呼び出しを使用したときのログ出力です。
ご覧のとおり、KML/XML および SQL クエリが 2 倍になっています。何が起こっているのか、どうすれば修正できるのでしょうか。ありがとう!
-トニー
ruby-on-rails - geokitを使用したジオコーディング機能を備えたアプリケーションのデータベースレイアウト
私は不動産のWebカタログを開発しており、geokitgemを使用してすべての広告をジオコーディングしたいと考えています。私の質問は、国、選択した国の都市、行政区域、または選択した都市の最寄りの地下鉄駅で検索したい場合、パフォーマンスポイントから最適なデータベースレイアウトは何でしょうか。利用可能な国、都市、行政区域、および大都市圏は、カタログの管理者が定義する必要があり、ジオコーディングによって検証する必要があります。
私は単一のテーブルを思いついた:
最終的な地理的位置は住所であり、不動産広告のマーカーを地図上に配置するために必要なすべての情報が含まれています。しかし、私はまだ検索機能に固執しています。
どんな助けでも大歓迎です。
ruby-on-rails - Rails プラグイン用のテスト ディレクトリをセットアップする
Controller と Model のいくつかのクラス メソッドとインスタンス メソッドを含む Rails プラグインの作成を開始しました。私は最初にモデルのテストをセットアップしようとしました。
テスト ディレクトリにモデル ディレクトリを追加します。しかし、私は気づいた - 私のモデルが "acts_as_mappable" できるようにするには geokit-rails プラグインが必要だ
プラグインをテストディレクトリに入れる方法は? /test/plugins/geokit-rails にコピーして、test_helper に含めようとしましたか?
プラグインからエラーが発生します
助言がありますか?
ruby-on-rails - Rails で条件の配列を組み合わせる
Rails3 ベータ版、will_paginate gem、および geokit gem & plugin を使用しています。
geokit-rails プラグインは Rails3 スコープをサポートしていないようです (:origin シンボルが問題です)。.find 構文を使用する必要があります。
スコープの代わりに、2 つの基準セットを配列形式で組み合わせる必要があります。
デフォルトの条件があります:
UI の選択に応じて、次の条件のいずれかをデフォルトの条件に追加する必要がある場合があります。
結果のクエリは次のようになります。
質問:
- これら 2 つの条件の配列を組み合わせる簡単な方法はありますか (正しく表現した場合)
- 問題に寄与していませんが、これらの古いバケツを作成するための DRYer な方法はありますか?
- 動作する geokit-rails プラグインで Rails3 スコープを使用する方法はありますか?
御時間ありがとうございます。
ruby-on-rails - Rails での IP アドレスのジオコーディング
私は GeoKit をセットアップしましたが、概ね満足しています。
しかし、私は最近 IP アドレスのジオコーディングを試みましたが、デフォルトの結果 (hostip.info によって提供されているように見えます) はあまり正確でも完全でもないようです。これで悪い結果になった人はいますか?
RailsでIPをGeoCodeするより良い方法はありますか?
ruby-on-rails - ジオキットとレール3
私はgeokitgemとプラグインをrails3で使用しています。これらには既知の問題があるようです。これはhttp://github.com/andre/geokit-rails/issues#issue/15で確認できます。
今、私は下部に提供されている解決策に従おうとしました。その関数定義をファイルの最後のacts_as_mapableのすぐ上に貼り付け、最初に呼び出された直後に貼り付けましたが、毎回何も起こりませんでした。
他に何ができるか考えていますか?
ありがとう