Как обращаться с опциями выбора формы, которые меняются со временем? - PullRequest
0 голосов
/ 22 мая 2019

В проекте Symfony 4 у меня есть форма, в которой пользователь может записать «докладчика» из списка select. Опции для списка select извлекаются из сущности Staff с использованием запроса в моем FormType:

public function buildForm(FormBuilderInterface $builder, array $options)
{
    $builder
        ->add('presenter', EntityType::class, [
            'class' => Staff::class,
            'placeholder' => 'Select presenter',
            'query_builder' => function (StaffRepository $repo) {
                return $repo->createAlphabeticalQueryBuilder()
                    ->andWhere('staff.isPresenter = true');
            },
        ])
        ->add('other fields...')
}

Со временем члены Staff, выступающие в роли докладчиков, меняются. У меня проблема в том, что если у меня есть запись, в которой «другие поля» должны быть обновлены позднее, но член Staff больше не является «докладчиком», то предыдущий докладчик даже не является опцией в select список. Когда форма отправлена, предыдущий докладчик теряется (presenter теперь записывается как NULL).

Как сохранить докладчика в таком случае?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...