【发布时间】:2019-12-10 16:45:18
【问题描述】:
我正在尝试将关联数组作为我的 OrdreMissionType 表单中的 ChoiceType 字段的选项传递:
$typeJour = ['Travaillée(s)' => "T", 'Calendaire(s)' => "C"];
$form = $this->createForm(OrdreMissionType::class, $odm,[
'user' => $user,
'affairesOdm' => $affairesForm,
'typeJour' => $typeJour,
'method' => 'PUT'
]);
$form->handleRequest($request);
if($form->isSubmitted() && $form->isValid()) {
$odm = $form->getData();
dd($odm);
$em = $this->getDoctrine()->getManager();
$em->persist($odm);
$em->flush();
}
我的 FormType 类:
class OrdreMissionType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
//...
$typeJour = $options['typeJour'];
$builder->add('typeJour', ChoiceType::class, [
'label' => 'Type de(s) journée(s)',
'placeholder' => 'Sélectionnez une option',
'choices' => $typeJour,
'label_attr' => ['class' => 'radio-inline'],
]);
//...
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults([
'typeJour' => false,
'data_class' => OrdreMission::class
]);
}
}
我的实体:
class OrdreMission
{
//...
/**
* @ORM\Column(type="string", length=255)
*/
private $typeJour;
//...
}
我的问题是,当我提交表单时,'typeForm' 字段始终为空,这是 'dd' 行的输出:
我不想将选择放在我数据库的特定表中,因为它们永远不会改变。有人知道如何解决这个问题吗?任何帮助将不胜感激。提前谢谢你!
【问题讨论】:
标签: php forms symfony doctrine