0

gmaps4rails を使用していて、「process_geocoding」の現在の値を確認したい (つまり、true か false かを確認する)。

この理由は、一度に大量のレコードを保存するときに大まかな「レート リミッター」(sleep 0.25) を追加したい (Google から over_quota エラーが発生しないようにするため) ためですが、process_geocoding の場合にのみこれを行いたいは現在 true に設定されています (および !gmaps ですが、その部分は簡単です)。

これは非常に単純だと思いますが、私の人生ではこれを理解することはできません。

私は明白なことを試しました:

if Building.acts_as_gmappable :process_geocoding
  do stuff
end

しかし、それはうまくいきませんでした。

どんな助けでも大歓迎です。

4

1 に答える 1

0

この宝石の作者は、github で私の質問に答えました。

https://github.com/apneadiving/Google-Maps-for-Rails/issues/374

これを行う正しい方法は、クラスではなくインスタンスで gmaps4rails_options をチェックすることです。

your_object.gmaps4rails_options[:process_geocoding]

だから私の場合:

building.gmaps4rails_options[:process_geocoding]

設定は「グローバル」であるため、どのインスタンスをチェックしても問題ないと思います。これをクラスメソッドとして呼び出すことができない理由はわかりませんが、これは関係なく機能します。

于 2013-10-28T20:59:41.853 に答える