0

私は2つのモデルを持っています:ビジネスとプログラム。

class Business < ActiveRecord::Base
has_many :programs

class Program < ActiveRecord::Base
belongs_to :business

企業には多くのプログラムがあります。ビジネスとプログラムの両方で、それぞれのテーブルに緯度と経度の列があります。プログラムがビジネスと同じ住所である場合もありますが、常にそうとは限りません。現在、プログラムの住所は、会社の住所と異なる場合にのみプログラムテーブルに保存されます。つまり、緯度/経度の列が同じ場合は空白になります。プログラムインスタンスの住所を空白のままにする場合(緯度と経度は空白)、Geocoderを使用して検索します。メソッド呼び出しの近くに、ビジネステーブルからのビジネスの住所も含めます。

言い換えれば、私が今これを行う場合:

@programs = Program.near(params....)

プログラムテーブルに緯度/経度が記録されているプログラムのみを取得します。明らかにこれは予想されます。(gemをフォークせずに)nearメソッドを変更する方法、またはスコープを使用して上記の呼び出しでProgramインスタンスの緯度/経度が空白かどうかをBusinessesテーブルで確認する方法はありますか?

4

0 に答える 0