Symfony Forms - Время добавления данных +30 минут

Когда я устанавливаю beginAt(DateTime) в Forms, я хотел бы установить ту же дату в «endAt», но +30 минут. Я понятия не имею, как это сделать :(

Первый код — это часть формы в моем проекте, а второй код — это функция «новое назначение» для добавления встречи.

$builder
                ->add('title', TextType::class, ['label'=>'Tytuł'])
                ->add('description', TextType::class, ['label'=>'Treść'])
                ->add('beginAt')
                ->add('endAt')


            ;



public function new(Request $request, $id, TokenStorageInterface $tokenStorage): Response
    {
        $currentUser = $tokenStorage->getToken()
                ->getUser();

        $username = $currentUser->getUsername();

        $appointment = new Appointments();
        $appointment->setDoctor($id);
        $appointment->setUsername($username);
        $form = $this->createForm(AppointmentsType::class, $appointment);

        $form->handleRequest($request);


        if ($form->isSubmitted() && $form->isValid()) {
            $em = $this->getDoctrine()->getManager();
            $em->persist($appointment);
            $em->flush();

            return $this->redirectToRoute('przychodnia_index');
        }


        return $this->render('appointments/new.html.twig', [
            'appointment' => $appointment,
            'form' => $form->createView(),
        ]);
    }

person NPzM    schedule 22.11.2018    source источник
comment
вы уже успешно использовали texttype. это поможет вам с датами? symfony.com/doc/current/reference/forms/types/datetime. html   -  person Norman M    schedule 23.11.2018
comment
Вы хотите установить endAt динамически сразу после того, как пользователь выбрал beginAt, например, с помощью javascript?   -  person qdequippe    schedule 23.11.2018
comment
@QuentinDequippe Точно!   -  person NPzM    schedule 23.11.2018


Ответы (1)


Попробуйте использовать Symfony Form Events для обновления поля endAt при отправке, например, и используйте некоторый ajax для динамической отправки вашей формы. Здесь есть отличный учебник (извините на французском языке) https://www.grafikart.fr/tutoriels/champs-imbriques-888

person qdequippe    schedule 26.11.2018