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

Répondre à