liée formulaire a l'objet model
Bonjour,
j'ai le formulaire suivant:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
class ContactForm(forms.Form):
titre = forms.CharField(max_length=200)
places_dispos = forms.IntegerField()
heure_deb = forms.TimeField()
heure_fin = forms.TimeField()
date = forms.DateField()
lieu_id = forms.IntegerField() |
et la view.py suivante:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| def contact(request):
if request.method == 'POST': # S'il s'agit d'une requête POST
form = ContactForm(request.POST) # Nous reprenons les données
pprint.pprint(request.POST)
if form.is_valid(): # Nous vérifions que les données envoyées sont valides
# Ici nous pouvons traiter les données du formulaire
titre = form.cleaned_data['titre']
date = form.cleaned_data['date']
heure_deb = form.cleaned_data['heure_deb']
heure_fin = form.cleaned_data['heure_fin']
# Nous pourrions ici envoyer l'e-mail grâce aux données que nous venons de récupérer
envoi = True
else: # Si ce n'est pas du POST, c'est probablement une requête GET
form = ContactForm() # Nous créons un formulaire vide
return render(request, 'backend/contact.html', locals()) |
et un modele d'objet suivant:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| class Contact(models.Model):
def __str__(self):
return self.titre
titre = models.CharField(max_length=200)
places_dispos = models.IntegerField()
heure_deb = models.TimeField('heure deb')
heure_fin = models.TimeField('date fin')
date = models.DateField()
lieu_id = models.ForeignKey(Lieux) |
Donc ma question est la suivante, comment liée mon formulaire, chaque attribut du formulaire au attribut objet.
Pour resumé, liéé le formulaire ContactForm() a l'objet Contact() afin de pouvoir sauvegarder l'objet en base