2011-02-09 6 views
3

私は場所ベースのアプリケーションで作業しており、私はレールのIPアドレスからユーザーの場所を保存したいと思います。私は現在geokitを使用していますが、私はユーザーのIPアドレスを使って場所を取得できますが、この情報を保存する最良の方法がデータベースに保存されていないのはなぜですか(初回/未登録のユーザーは場所の特徴は登録/ログインされていない)。レールを使用してIPからセッションジオロケーションを保存する最良の方法は何ですか?

私が与えることができる最も良い例は、GrouponまたはLivingSocialが初めて自分のアプリを訪れる場所を「知っている」ことです。彼らはIPを介してあなたの場所を取得し、おそらくセッションにそれを格納します。これが最善の方法ですか?もしそうなら、どうすればrails/geokitを使って行くのですか?

詳細情報が必要な場合はお知らせください。ありがとう!

答えて

2

ユーザーセッションにプッシュできない場合や、登録がない場合にそれを参照できない理由はありますか。また、物理IPを場所に関連付けて参照するキャッシュテーブルを作成して参照することもできます。

+0

私はできると思います。しかし、私はセッションやレールにあまり慣れていません。これを行う最善の方法に関するヒント(セッション[:city] = geo.city?と同じくらい簡単です)。また、アプリケーションのどのページにもアクセスする初めてのユーザーのために、このセッションを保存するにはどうすればよいでしょうか? – Slythic

+0

セッションは、テキストや数値の単純なビットを格納するのに本当にうまくいきますが、モデル全体をシリアライズするのはあまり良くありません。これらのフォーマットで地理情報を保管しておけば、大丈夫です。例: 'session [:loc] ="#{lat}、#{long} "' – tadman

関連する問題