Bonjour tout le monde! Dans le cadre d'un stage je réalise un site web de gestion de production de pain!
Aujourd'hui je fais face à deux soucis. Je possède une table nommé "Pain" qui renseigne tout les pains pouvant être produit ainsi que leurs prix de base.
Je possède ensuite une table Groupe qui représente plusieurs types de client :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 class Pain(models.Model): nom_pain = models.CharField(max_length=25,primary_key=True) prix_HT = models.DecimalField(max_digits=4,decimal_places=2) pain_decouverte = models.BooleanField(null=False) def __str__(self): return '{}'.format(self.nom_pain)
Voilà mon but ici est de pouvoir afficher dans un tableau le prix du pain pour chaque client ( ou sont prix de base sinon il n'est pas renseigné dans la base de données)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 class Groupe(models.Model): nom_groupe = models.CharField(max_length=30) def __str__(self): return '{}'.format(self.nom_groupe)
J'ai donc pensé tout d'abord à créer une table "Prix" qui va contenir le nom du pain , le groupe et un prix :Le premier soucis que j'ai est que je ne peux pas ajouter associer un pain et un groupe si celui ci est déjà présent au moins une fois dans la BDD. j'ai donc essayer une relation plusieurs à plusieurs mais je me retrouve a pouvoir avoir des doublons dans la BDD ce qui m'embête un peu :/
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 class Prix(models.Model): nom_groupe = models.OneToOneField(Groupe,on_delete=models.CASCADE) nom_pain = models.OneToOneField(Pain,on_delete=models.CASCADE) prix_HT = models.DecimalField(max_digits=4,decimal_places=2)
Le deuxième soucis est que je n'arrive pas a afficher le tableau comme je le souhaite j'aimerai pouvoir avoir cet affichage :
![]()
J'avais réussi a afficher les pains en haut et les groupes à gauche mais pas les valeurs à l’intérieur
Je suis encore débutant en python et je ne cache pas que j'ai beaucoup de mal avec la documentation de django!
Merci d'avance
Partager