Sinon, tu peux ajouter un paramètre dans ton url, indiquant dans ta vue,
de quel formulaire il s'agit
<formmethod="post"action="{%url'creation' 'form1'%}">{%csrf_token%}
...
...
<formmethod="post"action="{%url'creation' 'form2'%}">{%csrf_token%}
defclients(request, formUsed=False):
....
if formUsed == 'form1':
_form=ClientForm(request.POST)
elif formUsed == 'form2':
_form=PaysForm(request.POST)
if _form.is_valid():
_form.save()
....
Le 04/09/2014 12:13, Charlie Gentil a écrit :
Bonjour,
Je souhaite mettre deux formulaires différents sur une même page.
<formmethod="post"action="{%url'creation'%}">{%csrf_token%}
<ul>
<li>{{form1.code.label}}{{form1.code}}</li>
<li>{{form1.nom.label}}{{form1.nom}}</li>
<li>{{form1.pays.label}}{{form1.pays}}</li>
</ul>
{{form1.errors}}
<p><inputtype="submit"value="Enregistrer"name="save1"/></p>
</form>
<br><br>
AjouterunPays<br>
<formmethod="post"action="{%url'creation'%}">{%csrf_token%}
{{form2}}
<p><inputtype="submit"value="Enregistrer"name="save2"/></p>
</form>
Je souhaite différencier l'action des submits. J'ai donc fait ma vue
comme suit :
defclients(request):
ifrequest.method=='POST':
_formClient=ClientForm(request.POST)
_formPays=PaysForm(request.POST)
if'saveClt'inrequest.POST:
if_formClient.is_valid():
_formClient.save()
if'savePays'inrequest.POST:
if_formPays.is_valid():
_formPays.save()
else:
_formClient=ClientForm()
_formPays=PaysForm()
returnrender(request,'Clients.html',{
"form1":_formClient,
"form2":_formPays,
})
Malheureusement si je clique sur l'input "lié" à form2 des erreurs
apparaîsent dans form1 ... ceci est un peu normal puisque je n'ai rien
renseigné, mais en théorie il ne devrait même pas y avoir d'appel, non ?
Je trouvé plusieurs manières de faire ce que je souhaite sur le net,
mais pour le moment je n'ai réussi à en faire fonctionner correctement
aucune.
Une idée ??? :)
Bon ap' à tous.
_______________________________________________
django mailing list
[email protected]
http://lists.afpy.org/mailman/listinfo/django
_______________________________________________
django mailing list
[email protected]
http://lists.afpy.org/mailman/listinfo/django