Bonjour ,
je travaille actuellement sur un projet symfony.
Après avoir crée un formulaire de réservation , et importer les class ApplicationType et DateType.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 <?php namespace App\Form; use App\Entity\Booking; use App\Form\ApplicationType; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\OptionsResolver\OptionsResolver; use Symfony\Component\Form\Extension\Core\Type\DateType; class BookingType extends ApplicationType { public function buildForm(FormBuilderInterface $builder, array $options) { $builder ->add('startDate', DateType::class, $this->getConfiguration("Date d'arrivée", "La date à laquelle vous comptez arriver")) ->add('endDate', DateType::class, $this->getConfiguration("Date de départ","La date vous quittez les lieux ")) ; } public function configureOptions(OptionsResolver $resolver) { $resolver->setDefaults([ 'data_class' => Booking::class, ]); } }
Le fichier BookingController.php
Mon fichier template book.html.twig :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 <?php namespace App\Controller; use App\Entity\Ad; use App\Entity\Booking; use App\Form\BookingType; use Symfony\Component\Routing\Annotation\Route; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; class BookingController extends AbstractController { /** * @Route("/ads/{slug}/book", name="booking_create") */ public function book(Ad $ad) { $booking = new Booking(); $form = $this->createForm(BookingType::class, $booking); return $this->render('booking/book.html.twig', [ 'ad' => $ad, 'form' => $form->createView() ]); } }
Code twig : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 {% extends 'base.html.twig' %} {% block title %}Réserver l'annonce : {{ad.title}} !{% endblock %} {% block body %} <div class="container"> <h1>Réservez pour l'annonce : {{ ad.title }}</h1> <p>Vous êtes sur le point de réserver le bien de <strong>{{ ad.author.fullName }} </strong>, dites nous tout, on s'occupe du reste !</p> {{ form_start(form) }} <div class="alert alert-light"> <h2>Commencez par nous dire quelles sont les dates qui vous intéressent !</h2> <div class="row"> <div class="col"> {{form_row(form.startDate)}} </div> <div class="col"> {{form_row(form.endDate)}} </div> </div> </div> <h4>Montant du séjour : <span id="amount">...</span> €</h4> <span id="days">0</span> nuit(s) à {{ad.price}} / nuit {{form_end(form)}} </div> {% endblock %}
Lorsque je veux afficher la page formulaire dans mon navigateur il ne la reconnais pas, seul ma page erreur s'affiche .
https://127.0.0.1:8000/ads/qui-simil...ere-nulla/book
"Oups ! La page que vous recherchez n'existe pas !"
Pouvez vous m'aider .Merci
Partager