我想在Symfony中向表单添加一个额外的字段,但是如果它没有绑定到实体属性,它就不会接受。
如果有人知道我能做些什么来修复它,提前非常感谢!
下面是表单类型,我尝试添加“extra”字段:
<?php
namespace App\Form;
use App\Entity\Dossier;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
class InscriptionBCType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options): void
{
$builder
->add('extra', TextType::class, [
'label' => 'Les besoins qui motivent votre demande (soyez exhaustif)',
'required' => false,
])
->add('Nom')
->add('Prenom')
->add('Mail')
->add('civilite', ChoiceType::class, [
'choices' => [
'Monsieur' => "Monsieur",
'Madame' => "Madame",
],
]) ->add('telephone')
->add('adresse')
->add('code_postal')
->add('ville')
->add('projet', TextType::class, [
'label' => 'votre projet entrepreneurial (SI VOUS EN AVEZ UN)(FACULTATIF)',
'required' => false,
])
->add('besoin', TextType::class, [
'label' => 'Les besoins qui motivent votre demande (soyez exhaustif)',
'required' => false,
])
->add('budgetCPF', TextType::class, [
'label' => 'Votre budget CPF mobilisable',
'required' => false,
])
;
}
public function configureOptions(OptionsResolver $resolver): void
{
$resolver->setDefaults([
'data_class' => Dossier::class,
]);
}
}
我得到这个错误:
Can't get a way to read the property "extra" in class "App\Entity\Dossier".
1条答案
按热度按时间zc0qhyus1#
我知道我已经在评论中回答了这个问题,但并不是每个人都读他们,这就是为什么我张贴它作为一个答案,如果你想一个字段被忽略,你必须使用Map,例如:
add("extra"=> 'file', array("mapped"=>false))