У меня есть небольшой вопрос о процессе обновления моего symfony2.8 до symfony3.x. У меня много устаревших предупреждений, которые я хочу исправить, прежде чем начинать обновление.
Но я не могу это исправить, потому что кажется, что некоторые (новые) функции недоступны в версии 2.8. могло ли это быть?
Например:
Accessing type "text" by its string name is deprecated since Symfony 2.8 and will be removed in 3.0. Use the fully-qualified type class name "Symfony\Component\Form\Extension\Core\Type\TextType" instead. (3 times) Show stack trace
это означает, что я должен настроить свою форму из:
->add('birthyear', 'text', array(
'label' => 'Year of birth',
'attr' => array('placeholder'=>'yyyy'),
'required' => false,
))
к...
->add('birthyear', Symfony\Component\Form\Extension\Core\Type\TextType:class, array(
'label' => 'Year of birth',
'attr' => array('placeholder'=>'yyyy'),
'required' => false,
))
но этот путь к папке, соответственно, не существует в моей текущей версии.
Симфони \ Компонент \ Форма \ Расширение \ Ядро \ Тип \ TextType
я должен исправить это после обновления? или какой обходной путь мне нужно сделать? Я сбит с толку, потому что в документации Symfony написано «вы должны исправить это раньше».
Спасибо за ответ!
Спасибо за ваш отзыв. Установил папку с новыми компонентами и теперь она работает!




use Symfony\Component\Form\Extension\Core\Type\TextType;
->add('birthyear', TextType::class, array(
'label' => 'Year of birth',
'attr' => array('placeholder'=>'yyyy'),
'required' => false,
))
Привет Спасибо за ответ! Нет, это не работает. Я пробовал это до того, как написал свой вопрос. Получаю ответ: не удалось загрузить тип "General \ CommonBundle \ Form \ TextType": класс не существует.
@helmi Вы пропустили инструкцию использования. Но из другого комментария я вижу, что у вас это работает.
Привет, спасибо, извините, это была ошибка копирования и вставки! Большое спасибо за потраченное время!
Ваша текущая версия - 2.8? TextType существует уже давно. Вы не должны использовать :: class, когда имя класса указано полностью. Или есть другая проблема? Нет фундаментальной причины, по которой вы не можете удалить все сообщения об устаревании, оставаясь на 2.8.