country
,city
およびprovince
というモデルがあります。Railsは結合テーブルから値を取得します
Country
has_many: cities
City
has_many :provinces
belongs_to :country
Province
belongs_to :city
このモデルは私がparams[:name]
を取得する際に、関連するレコードを検索するために参加してname
、lat
と
long
だから、私は1つのクエリで3つのモデルを検索したい同じ列があります。この可能性は、それはフランスが、それは国などでそれを見つけるの場合は例えば
..
ですか?
EDIT:
私が試しました。
Country.all.joins(city: :province).where("cities.name = ? or provinces.name = ?", params[:name])
しかし、これは国を返します。私は国が緯度と経度を持っているかどうかを見たいと思っています。もしその都市が都市の長らく緯度を上げていれば、その州は緯度と経度を取得しています。その都市 は都市の緯度長い取得し、それが地域であれば緯度と 州の長い得れば、私はそれが国である場合、検索したい
複数の国、都市、または州が同じ名前で検索している場合はどうなりますか? – moyinho20