public function buildForm(FormBuilderInterface $builder, array $options): void
{
$builder
->add('id', HiddenType::class, [])
->add('band', EntityType::class, [
'class' => Band::class,
'choice_label' => 'band',
'choice_value' => 'band',
'attr' => ['class' => 'py-2 px-4 ml-2 mt-1 border border-gray-300']
])
->add('mode', TextType::class, [
'attr' => ['class' => 'w-full py-2 px-4 ml-2 mt-1 border border-gray-300']
])
->add('frequency', NumberType::class, [
'scale' => 4,
'invalid_message' => 'The frequency is invalid.',
'attr' => ['class' => 'w-full py-2 px-4 ml-2 mt-1 border border-gray-300']
])
->add('comments', TextareaType::class, [
'attr' => ['class' => 'w-full py-2 px-4 ml-2 mt-1 border border-gray-300']
])
->add('submit', SubmitType::class, [
'attr' => ['class' => 'rounded-md font-bold border py-2 px-4 mx-auto bg-blue-500',
'onclick' => 'SubmitOpSession'],
])
;
}
< /code>
Некоторые поля опущены ... Форма создается в контроллере: < /p>
$form = $this->createForm(MyFormType::class, $ThisOpSession, [
'attr' => ['class' => 'w-full'],
'action' => $this->generateUrl('myendpoint'),
]);
$form->handleRequest($Request);
< /code>
Если он актуален, $ запрос - это объект HTTPFoundation. При отправке (post) с данными формы я получаю: < /p>
App\Entity\OpSession::setBand(): Argument #1 ($band) must be of type string, App\Entity\Band given, called in /var/www/rtqm/vendor/symfony/property-access/PropertyAccessor.php on line 532
< /code>
Я и ожидаю, что при отправке HandleRequest должен загружать объект $ thisopsession с обновленными данными формы, и то, что я прочитал из сообщения об ошибке, является то, что вместо того, чтобы передавать выбор «полосы» из формы к сбору свойств класса, HandLeRequest является прохождение объекта группы. Я не уверен, почему у HandleRequest есть проблемы с ним.
Чего мне не хватает? $BandRepo = $entityManager->getRepository(Band::class);
$Bands = $BandRepo->findAll();
$form = $this->createForm(OpSessionFormType::class, $ThisOpSession, [
'attr' => ['class' => 'w-full'],
'action' => $this->generateUrl('osmanager'),
'bands' => $Bands,
]);
< /code>
и заменил EntityType на choicetype: < /p>
->add('band', ChoiceType::class, [
'choices' => $options['bands'],
'choice_label' => 'band',
'choice_value' => 'band',
])
В моем приложении у меня есть форма, сгенерированная с использованием класса, как SO: < /p> [code] public function buildForm(FormBuilderInterface $builder, array $options): void { $builder ->add('id', HiddenType::class, [])
} < /code> Некоторые поля опущены ... Форма создается в контроллере: < /p> $form = $this->createForm(MyFormType::class, $ThisOpSession, [ 'attr' => ['class' => 'w-full'], 'action' => $this->generateUrl('myendpoint'), ]);
$form->handleRequest($Request); < /code> Если он актуален, $ запрос - это объект HTTPFoundation. При отправке (post) с данными формы я получаю: < /p> App\Entity\OpSession::setBand(): Argument #1 ($band) must be of type string, App\Entity\Band given, called in /var/www/rtqm/vendor/symfony/property-access/PropertyAccessor.php on line 532 < /code> Я и ожидаю, что при отправке HandleRequest должен загружать объект $ thisopsession с обновленными данными формы, и то, что я прочитал из сообщения об ошибке, является то, что вместо того, чтобы передавать выбор «полосы» из формы к сбору свойств класса, HandLeRequest является прохождение объекта группы. Я не уверен, почему у HandleRequest есть проблемы с ним. Чего мне не хватает? $BandRepo = $entityManager->getRepository(Band::class); $Bands = $BandRepo->findAll();
$form = $this->createForm(OpSessionFormType::class, $ThisOpSession, [ 'attr' => ['class' => 'w-full'], 'action' => $this->generateUrl('osmanager'), 'bands' => $Bands, ]); < /code> и заменил EntityType на choicetype: < /p> ->add('band', ChoiceType::class, [ 'choices' => $options['bands'], 'choice_label' => 'band', 'choice_value' => 'band', ]) [/code] Все еще получает ту же ошибку.
В моем приложении у меня есть форма, сгенерированная с использованием класса, как SO:
public function buildForm(FormBuilderInterface $builder, array $options): void
{
$builder
->add('id', HiddenType::class, [])
Я пытаюсь использовать Vaadin 24.4.0.beta1 с Java 17 с Intellij IDEA. Я загрузил образец проекта с сайта start.vaadin.com, это представление чата с несколькими каналами — элемент Flow.
Я попробовал немного отредактировать этот код. У меня нет...