質問

シンプルなショッピングカートを作成しようとしています。それらを制御する方法を読んで、3つの制御方法があることを確認します。 1つはCookie、もう1つはセッションベース、最後はデータベースモデルです。 私はどちらが良い選択だと思いますか? 一部の人は、データベースメソッドの方が優れていると言いましたが、それも難しいと言いました。 データベースモデルのチュートリアルも探しています...

役に立ちましたか?

解決

あなたが本当に話しているように見えるのはセッションです。ユーザーがチェックアウトしている間に、おそらくショッピングカートのデータの一部をセッションに保存するので、これが混乱の原因です。

質問に対する答えは、セッションに保存しているデータの種類と量によって異なります。 Cookieにはサイズ制限があり、ユーザーの機密データを暗号化せずに保存しないでください。そこに暗号化されたクレジットカード番号などを入れてはいけないと言う人もいます。 DBに裏打ちされたセッションの欠点は、頻繁にそれらをクリアする必要があることです。これは、cronジョブを介して実行されるrakeタスクを使用して簡単に実行できますが、それでも考慮しなければならないことがあります。ファイルでバックアップされたセッションはあまり使用されず、何かをすぐに起動して実行するためだけにあります。実稼働環境ではファイルバックアップセッションを実行しません。

Authlogicは、Railsプロジェクトに取り込むことができるgemです。継承可能なUserSessionモデルを提供します。たくさんの機能があり、完全に設定可能です。

他のヒント

作成したショッピングカートはデータベースに情報を保存し、セッションにはcart_idを保存するだけです。その後、数日ごとにdbから満たされていないショッピングカートをクリーンアップするジョブが必要です。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top