PostGISPOINT
タイプを使用して場所の座標を格納する Rails モデルがあります。境界ボックス内に含まれるすべての場所を照会するにはどうすればよいですか? 境界ボックスは、次のように Google マップから取得されます。
/locations?within=40.766159%2C-73.989786%2C40.772781%2C-73.979905&per_page=500
私のモデルでは、これを処理するスコープがありますが、クエリを正しく取得する方法がわかりません:
scope :within, ->(box_string) {
sw = box_string.split(",")[0..1].reverse.map {|c| c.to_f}
ne = box_string.split(",")[2..3].reverse.map {|c| c.to_f}
box = "BOX3D(#{sw[0]} #{sw[1]}, #{ne[0]} #{ne[1]})"
where( ***WHAT DO I DO HERE?*** )
}