Besoin d'aide ?

Besoin de conseil E-commerce Base de données

  • Avatar de mattminimal
    Membre depuis :
    21/01/2017
    Messages :
    16

    Bonjour,

    Je suis entrain de réaliser un Ecommerce pour un client et j'aimerai savoir si j'ai pris la bonne direction concerant la base de données dans le but d'avoir quelque chose de clair et de maintenable.

    Le Catalague Ecommerce se compose de produits de différentes catégories. Il y a des ballons, des chaussures, des tee-shirts bref.. un large catalogue de produit différents des un des autres.

    Des produits ne possède pas toujours de variantes, par exemple le ballons ne possède pas toujours de variantes de taille dans mon cas..

    D'un point de vue architecture site je vais avoir quelque chose comme ca :

    Voici ce que j'ai imaginé par pouvoir couvrir le besoin,

    Tables :

    categories
    -id
    -name

    products
    -id
    -nom
    -description
    -category_id

    products_attributs
    -id
    -product_id
    -name (ex : size, color .. )

    product_attribut_options
    -id
    -product_id
    -product_attribut_id
    -name (ex : XL, bleu .. )

    stock
    -id
    -product_id
    -price
    -quantity_available

    stock_values
    -id
    -product_id
    -product_attribute_id
    -product_attribute_option_id
    -stock_id

    Cela semble corrécte ? j'ai créé la table stock pour attribuer une quantité et un prix en fonction des attributs car un tee-shirt junior peut être moins chère qu'un tee-shirt XL.

    J'ai la problèmatique du filtre ajax qui doit récupèrer les variantes d'une categorie de produit et afficher un module de filtre en fonction de la categorie produit affiché et jaimerai toujours faire appel au même filtre qui affiche les variants en fonction de la categorie produit. Y-a t-il une métode simple pour gérer ça ?

    J'ai initialisé mon ProductController avec deux paramètres pour récupérer la rubrique et la categorie (j'ai pas encore fait le reste du process )

    public function products (Request $request , $rubrique , $categorie){

    return view('product/list' , compact('rubrique' , 'categorie'));
    }

    Route::get('/produits/{rubrique}/{categorie}', 'ProductController@products')->name('produits');

    Merci d'avance de vos retours, bon dimanche

  • Avatar de bestmomo
    Membre depuis :
    07/04/2013
    Messages :
    1950

    Bonjour,

    Je me pose des questions sur le schéma des données :

    • dans la table product_attribut_options la clé étrangère product_id me semble superflu étant donné qu'on sait de quel produit il s'agit en passant par la table products_attributs
    • dans la table sotck on a juste la clé étrangère product_id alors que le stock doit concerner de façon plus fine les attributs et options
    • à quoi sert la table stock_values ?

    Ceci dit l'élaboration d'une application d'e-commerce est sans doute l'une des plus délicates, bon courage ;)

    Il y a des packages disponibles pour Laravel, en particulier Aimeos.

    Personnellement pour créer une boutique j'ai récemment préféré faire appel à Prestashop.

  • Avatar de mattminimal
    Membre depuis :
    21/01/2017
    Messages :
    16

    Merci pour ta reponse, j'y ai beaucoup pensé à utilisé prestashop. J'ai juste peur de pas savoir gérer si il y a un souci à un moment donnée et de pas être maitre du bouzin ... ^^ qu'en pense tu ? quand j'ai vu le code je vais une uzine à gaz

  • Avatar de bestmomo
    Membre depuis :
    07/04/2013
    Messages :
    1950

    C'est vrai que le code est lourd et ce n'est pas facile de nretrer là dedans. j'ai eu un petit souci à un moment mais je m'en suis sorti grâce à la vaste communauté qui existe.

    Je me suis longuement posé la question du développement perso mais Prestashop est vraiment très bien conçu et déjà tout prêt, en plus il dispose d'un monceau de plugins en particulier pour les expéditions et le paiement.

    Donc il faut faire un choix :)

    Il y a quand même pas mal de packages pour accélérer le développement.

Vous ne pouvez pas répondre à ce sujet.