Исключение преобразования значения формы Symfony

prod.log

request.CRITICAL: Uncaught PHP Exception Symfony\Component\Form\Exception\TransformationFailedException: "Unable to transform value for property path "location": Expected a numeric." at /home/placeme1/vendor/symfony/symfony/src/Symfony/Component/Form/Form.php line 1107

{"exception":"[object] (Symfony\Component\Form\Exception\TransformationFailedException(code: 0): Unable to transform value for property path \"location\": Expected a numeric. at /home/placeme1/vendor/symfony/symfony/src/Symfony/Component/Form/Form.php:1107, Symfony\Component\Form\Exception\TransformationFailedException(code: 0): Expected a numeric. at /home/placeme1/vendor/symfony/symfony/src/Symfony/Component/Form/Extension/Core/DataTransformer/NumberToLocalizedStringTransformer.php:113)"} []

Действие контроллера

/**
 * @Route("/student/details/edit")
 */
public function editStudentAction(Request $request)
{
    $user = $this->get('security.token_storage')->getToken()->getUser();
    $em = $this->getDoctrine()->getManager();
    $student = $em->getRepository('AppBundle:Student')
                  ->findOneBy(['userId'=>$user->getId()]);

    $categoryQuery = $em->getRepository('AppBundle:SkillCategory')->findAll();

    $form = $this->createFormBuilder($student)
        ->add('university',TextType::class)
        ->add("course",TextType::class)
        ->add("location",IntegerType::class)
        ->getForm();

    $form->handleRequest($request);

    if ($form->isSubmitted()) {
        if ($form->isValid()) {
            $review_data = $form->getData();
            $em->persist($review_data);
            $em->flush();
            $this->addFlash('success', 'Your Review has been added');
            return $this->redirect('/profile');
        } else {
            return new Response("form is not valid");
        }
    } else {
        //return new Response("not correct");
    }

    return $this->render('student/editStudent.html.twig',array(
        "editStudentForm" => $form->createView(),
        "skillCategorys" => $categoryQuery,
    ));
}

Можете ли вы показать свой студенческий класс?

Kevin 03.11.2018 23:13

Что такое местонахождение студента? опишите это (отредактируйте свой вопрос)

Pmpr 04.11.2018 08:12
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
2
492
1

Ответы 1

Не могли бы вы прислать нам объявление объекта Student (class, yml или xml)?

Похоже, что поле «Местоположение ученика» не является целочисленным.

Это сработает, если вы удалите тип формы в поле местоположения, как это?

$form = $this->createFormBuilder($student)
    ->add('university',TextType::class)
    ->add("course",TextType::class)
    ->add("location")
    ->getForm();

Использование ответов для того, чтобы задавать вопросы, приведет только к отрицательному голосу. Делает вас еще дальше от возможности оставлять комментарии.

Cerad 04.11.2018 00:02

используйте комментарии к основному вопросу, чтобы задать вопрос. Как вы могли ответить на вопрос, который еще не понял?

Pmpr 04.11.2018 08:01

Другие вопросы по теме