Question

J'essaie de créer un panier simple. J'ai lu des explications sur le contrôle de ces derniers et constaté qu'il existe trois façons de les contrôler. l'un est un cookie, un autre est basé sur une session et le dernier est un modèle de base de données. Je me demande lequel est le meilleur choix? Certains ont dit que la méthode de la base de données est meilleure mais que c'est aussi plus difficile. Je recherche également un didacticiel sur les modèles de base de données ...

Était-ce utile?

La solution

Vous semblez vraiment parler de sessions. Vous allez probablement stocker une partie des données de votre panier dans la session pendant le paiement, c’est d’où votre confusion.

La réponse à votre question dépend du type et de la quantité de données que vous stockez dans la session. Les cookies ont des limites de taille et vous ne devez pas y stocker de données utilisateur sensibles non cryptées. Certains diraient que vous ne devriez même pas y mettre des informations telles que les numéros de carte de crédit chiffrés. L'inconvénient des sessions avec base de données est de les éliminer de temps en temps. Cela se fait facilement avec une tâche de rake exécutée via un travail cron, mais il faut toujours y penser. Les sessions de sauvegarde de fichiers ne sont pas utilisées souvent et sont plutôt là pour vous permettre de démarrer rapidement avec quelque chose. Je ne voudrais pas courir avec des sessions sauvegardées sur fichier en production.

Authlogic est un joyau que vous pouvez intégrer à votre projet Rails. Il fournit un modèle UserSession dont vous pouvez hériter. Il possède de nombreuses fonctionnalités et est entièrement configurable.

Autres conseils

Les paniers que j'ai construits stockent les informations dans la base de données, et stockent simplement le cart_id dans la session. Ensuite, vous avez juste besoin d'un travail qui nettoie tous les deux ou trois jours les paniers non remplis de db.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top