1

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

4

2 に答える 2

3

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

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

Authlogicは、Railsプロジェクトに取り込むことができる宝石です。継承可能なUserSessionモデルを提供します。多くの機能があり、完全に構成可能です。

于 2009-09-10T02:08:29.140 に答える
2

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

于 2009-09-10T02:10:39.263 に答える