3 votes

stockage d'un panier d'achat lorsqu'aucun utilisateur n'est connecté (doute playframework)

Je parcourais les posts sur Play! framework et je suis tombé sur des messages qui discutaient ecommerce Comme je suis un débutant dans les deux domaines, j'ai pensé à faire un exercice. J'ai écrit quelques cas d'utilisation et quelques exigences comme ci-dessous. J'aimerais avoir votre opinion à ce sujet, en espérant que cela puisse élargir ma connaissance technique.

Quelques exigences pour un panier d'achat sur une page web :

L'utilisateur peut ajouter des articles au panier même sans se connecter au site.

2. l'utilisateur doit se connecter après avoir cliqué sur checkout link .

La page des détails de l'article contiendra une icône addtocart uniquement si cet article n'est pas déjà dans le panier.

La page des détails de l'article contiendra un message de type minicartview ,montrant les noms des articles dans le panier et le prix total.

J'ai codé le ShoppingCart Il peut être récupéré à partir de la base de données en utilisant son nom. User .

@Entity
class ShoppingCart{
...
   @OneToOne
   public User user;
}

Quelques scénarios possibles que j'ai envisagés.

L'utilisateur est déjà connecté, lorsqu'il arrive sur la page des détails de l'article.

Cela semble facile, je peux récupérer le panier de la base de données, en utilisant l'utilisateur connecté.

User user = User.find("byEmail", Security.connected()).first();
cart = ShoppingCart.find("byUser",user);
...

2. aucun utilisateur n'est connecté actuellement.

C'est ce qui me dérange. Comment gérer cela ? Comment puis-je montrer au minicartview ici sur Itemdetails Où dois-je stocker le panier ? Le cache est volatile et n'est pas fiable. Comment dois-je stocker le panier autrement ? Je ne peux pas le stocker dans la base de données avant que l'utilisateur ne se connecte.

Si quelqu'un peut clarifier ce scénario, cela pourrait m'aider beaucoup

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X