Bonjour à tous,

Je débute avec Django,et je n'arrive pas du toute à cerner la façon de m'y prendre avec ce formulaire qui me parrait pourtant simple.

Pouvez vous me mettre sur la piste d'une solution ...

En gros l'application a pour but de suivre le stock de mon congélateur :-) lol

Model.py
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
class HISTORIQUE(models.Model):
	# Archive les chargements déchargement des produits localisés dans le congélateur
    produit_localise=models.ForeignKey(PRODUIT_LOCALISE, on_delete=models.CASCADE)
    qte=models.FloatField(default=None,)
 
class PRODUIT_LOCALISE(models.Model):
	# Créer un couple produit/lieu de stockage 
    produit=models.ForeignKey(PRODUIT_QUANTIFIE, on_delete=models.CASCADE)
    lieu_stockage=models.ForeignKey(LIEU_STOCKAGE, on_delete=models.CASCADE)
 
class PRODUIT_QUANTIFIE(models.Model):
	# Classifie un produit, par exemple :  VIANDE / Steack / portion, LEGUMES / Haricots verts / paquets, ...
    nom=models.CharField(max_length=120, default='',)
    famille_produit=models.ForeignKey(FAMILLE_PRODUIT, on_delete=models.CASCADE)
    type_unite=models.ForeignKey(TYPE_UNITE_PORTION, on_delete=models.CASCADE)
 
class LIEU_STOCKAGE(models.Model):
    # Localise le stockage : petit congélo garage / grand cuisine tirroir n°2 / ...  
    nom=models.CharField(max_length=120, default='',)

Je souhaiterai dans mon template le formulaire suivant:

Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
Mise à jour des stocks :
<form>
{% for %}
{{ Lieu de stockage }} : [ Integerfield / initial = 0 ] {{ unite }} 
{% end for %}
<input Bouton Enregistrer>
</form>

Le but est donc de récupérer chaque valeur du champs integerfield et d'ajouter une ligne a l'historique :
- id_produit récupéré via l'url : OK çà marche
- unité : récupéré via l'id_produit çà marche j'ai juste besoin de l'affichage donc pas de soucis
- Lieu de stockage : j'arrive à l'afficher mais je n'arrive pas à l'intégrer/transmettre dans le form

Le soucis, c'est que je n'arrive pas a transmettre l'info des lieux de stockage dans le formulaire. J'ai cherché entre autre sur les formsets, les inline formsets, les hidden field, ... mais pas l'ombre d'une version fonctionnel
Est ce mon modèle qui n'est pas adapté / mal découpé ?! Par exemple est ce que le model PRODUIT_LOCALISE est judicieux ?! Aurais je du mettre l'info du lieu dans l'historique ? Je pensais gagné en taille de données.

Merci d'avance pour vos conseils.