Vous n'êtes pas identifié(e).
Bonjour,
Je développe (j'essai) un petit site sur Django et j'ai quelques soucis dans la mise en forme de certains templates. En effet, j'arrive à afficher un formulaire avec un menu dans le tout dans la meme page, et à afficher le résultat par exemple. J'utilise un template "base.html" avec des balises
<section id="content">
{% block content %}{% endblock %}
</section>
Cela dit, je souhaite mettre sur la meme page deux formulaires comme ceci:
<section id="content">
{% block content %}{% endblock %}
</section>
<section id="recherche">
{% block recherche%}{% endblock %}
</section>
Mais cela ne m'affiche qu'un seul formulaire mais deux boutons "submit". Pourquoi ??
Ma deuxieme question, similaire à la premiere est comment afficher sur la meme page, un formulaire de recherche et les résultats de ce formulaires ??
Merci
Hors ligne
Salut,
déjà le code que tu affiches ne montre aucun formulaire mais juste des balises block. Pour la première question: Oui tu peux avoir 2 formulaire en une page, exemple.
views.py
def test(request):
#### Premiere formulaire ####
form1=PremierForm(request.POST)
if request.method=='POST' and form1.is_valid():
#si les informations du premier form sont POST et valide sa passe
#### Deuxieme formulaire ####
form2=DeuxiemeForm(request.POST)
if request.method == 'POST' and form2.is_valid():
#de même qu'au dessus
return render(request, "test.html", {'form1':form1,'form2':form2 })
test.html
<form method="post" action=" ">
{% csrf_token %}
{{form1.as_p}}
</form>
<form method="post" action=" ">
{% csrf_token %}
{{form2.as_p}}
</form>
Avec ça il y a 2 formulaire sur une page.
Et pour la deuxième question: Oui, c'est possible aussi mais si tu veux pas de chargement, tu vas devoir passer par JavaScript je pense.
Hors ligne