C'est normal, lorsque le formulaire est traité, ta vue vérifie également les infos de l'autre formulaire. Soit tu valides les 2 en même temps. 1 seul bouton. Soit tu passes par ajax, avec une vue pour chaque bouton
Mais le plus simple de faire une formulaire par page... et encore mieux, si tu veux que ce soit propre, tu l'ouvres dans une fenêtre modale. ------------------------------------------- FDV Le 4 septembre 2014 12:13, Charlie Gentil <[email protected]> a écrit : > Bonjour, > > > > Je souhaite mettre deux formulaires différents sur une même page. > > > > > > <form method="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><input type="submit" value="Enregistrer" name="save1"/></p> > > </form> > > <br><br> > > > > Ajouter un Pays<br> > > <form method="post" action="{% url 'creation' %}">{% csrf_token %} > > {{ form2 }} > > <p><input type="submit" value="Enregistrer" name="save2"/></p> > > </form> > > > > Je souhaite différencier l'action des submits. J'ai donc fait ma vue comme > suit : > > > > def clients(request): > > if request.method == 'POST': > > _formClient = ClientForm(request.POST) > > _formPays = PaysForm(request.POST) > > > > if 'saveClt' in request.POST : > > if _formClient.is_valid(): > > _formClient.save() > > if 'savePays' in request.POST : > > if _formPays.is_valid(): > > _formPays.save() > > > > else: > > _formClient = ClientForm() > > _formPays = PaysForm() > > > > return render(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
