Могу ли я передать собственный массив через параметры из контроллера в formType - PullRequest
0 голосов
/ 07 апреля 2019

Я хочу передать массив через эту функцию: $ form = $ this-> createForm (ProductTypeType :: class, $ productType, $ options);

В symfony4 швы невозможно передать собственный параметрчерез $ otions для formType.

1 Ответ

0 голосов
/ 07 апреля 2019

Это возможно, как вы описываете.Вот пример:

$form = $this->createForm(
    EntityType::class,
    $entity,
    ['optionOne' => true] //this is the array of options (in this case just one)
);

В EntityType вы можете использовать эту опцию следующим образом (например, добавить поле):

if($options["optionOne"]){
     $builder
         ->add('addedField')
//....or do something else...

Также в EntityType donне забудьте установить значение по умолчанию для вашей опции:

public function configureOptions(OptionsResolver $resolver)
{
    $resolver->setDefaults([
        'data_class' => Entity::class,
        'optionOne' => false,
    ]);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...