小编Pie*_*rre的帖子

为什么我似乎无法将变量从控制器传递给symfony 4中的表单?

因此,我试图将变量从Symfony 4.3项目中的控制器传递给表单...我试图设置选项解析器,传递数组...我仍然没有运气,'option“ 0”没有存在....'

在configureOptions中将变量定义为setDefaults,然后setRequired从createForm(ThingType :: class,$ thing,array('my_option'=> $ myOption))中的控制器传递一个array()类型

从控制器:

$form = $this->createForm(PieceEditType::class, $piece, ['pieceId'=> $piece->getId()]);

从表单方面:

    * @param FormBuilderInterface $builder
    * @param array $options
    *
    */
   public function buildForm(FormBuilderInterface $builder, array $options)
   {

      $pieceId = $options['pieceId'];

       $builder
           ->add('full', FileType::class, [
               'data_class' => null

           ])
          ->add('ordering', EntityType::class, [
              'class' =>Image::class,
               'choice_label' => 'ordering',
               'query_builder' => function (ImageRepository $er){
                   return $er->findByPieceAndReturnOrdered($pieceId);

               }
          ])


       ;
   }

   /**
    * @param OptionsResolver $resolver
    * {@inheritdoc}
    */
   public function configureOptions(OptionsResolver $resolver)
   {
       $resolver->setDefaults(array(
           'data_class' => …
Run Code Online (Sandbox Code Playgroud)

symfony

5
推荐指数
1
解决办法
80
查看次数

标签 统计

symfony ×1