J'essaie de créer un produit de commerce électronique qui prend les commandes de travaux d'impression. Je voudrais créer des tables telles que celles ici sur solopress par exemple http://www.solopress.com/leaflet-printing/leaflets.html. Je me bats un peu avec les étapes logiques de la modélisation dans une base de données. Tout d'abord, comment pourrais-je créer une table comme celle-là où les options de colonnes pourraient être configurées différemment par produit dans une base de données sans avoir à créer une table de base de données réelle à chaque fois. Ensuite, quelle serait la meilleure façon de travailler pour que les prix changent comme dans l'exemple ci-dessus, quand vous changez entre Unfolded et Folded - cela doit-il être deux tables indépendantes qui sont commutées?Modélisation d'une table de matrice de prix dans MySQL
0
A
Répondre
0
Pour le stockage des prix que je aurait organiser la table comme ceci:
size enum('A3','A4','A5','A6','DL'),
min_qty INT,
sides ENUM('1','2'),
folded BOOL,
price DECIMAL(6,2)
avec la taille de votre être la clé primaire + min_qty + côtés + plié. Générer la page Web impliquera PHP ou similaire et la mise à jour du prix que les options sont choisies impliquera javascript. Si vous avez des questions spécifiques sur celles-ci, elles devraient probablement être posées séparément.
Ah je n'avais pas pensé à enum, ça pourrait être utile. Cela peut-il être changé? Je suppose que cela changerait la structure de la table. –
Les enums peuvent être changés avec ALTER COLUMN qui n'est pas difficile, mais il semble peu probable que vous ayez plus de deux côtés sur une page –
Ah ah, en effet :) mais nous pouvons changer les tailles disponibles! Oh, je viens de penser que dans ce cas je n'ai peut-être pas besoin de le définir comme une énumération, peut-être que la chose qui m'intéresse le plus est de le saisir sur une combinaison de champs? –