2

と のアプリがPhotosありLocationsます。

class Photo < ActiveRecord::Base
  belongs_to :location
end

class Location < ActiveRecord::Base
  has_many :photos
end

私がやろうとしているのは、フィールドを使用して写真を( geoocoder gem:addressで) 自動地理位置情報にすることですが、地理位置情報データをlocationsテーブルに保存したいです。

この宝石の github ページのチュートリアルに従うことで、これらのデータをPhotos複雑にすることなくテーブルに保存できますが、この自動ジオロケーション マジックを関連付けられたテーブルに移動する方法を想像することさえできません。

さらに、タグ付けのように機能する場合は非常に優れています。提供されたアドレスが既にlocationsテーブルにある場合、スクリプトはそれを新しい/更新された写真に関連付ける必要があります。ただし、データベースにそのようなアドレスがない場合は、新しいロケーション レコードを作成する必要があります。

通常、コールバックを使用して写真を手動でジオコーディングすることにより、100%手動で行いbefore_saveますが、それは非常に汚い解決策であり、私が知らない解決策があると思います。

4

1 に答える 1