Динамическая загрузка значений в easy admin

В EasyAdmin в сущности товара есть связанные поля - свойства. Их может быть много, так что используется CollectionField и как тип CatalogPropertyField. Суть в том, что в CatalogPropertyField есть три поля, одно это тип свойства (бренд, материал и тп), два других - значение. Тип может быть строкой или выбором из уже созданных значений. В случае, если выбирается второе у нас есть выбор из возможных значений, которые грузятся из таблицы при формировании полей в easyadmin

->add('value_id', EntityType::class, [
                    'label' => 'Значение (выборка)',
                    'class' => Value::class,
                    'choice_value' => function (?Value $entity): string {
                        return $entity ? $entity->getId() : '';
                    }
                ])

Проблема в том, что грузятся все значения. Условная ситуация: выбираю тип бренд, мне выпадает список, в котором лежат значения и для метариалов и брендов и категорий и тд. Пытался реализовать через ajax с подгрузкой списка после выбора типа

...
success: function (response) {
          console.log(response)
          if (response.type === 'list') {
            let html_data = '<div class="" id="property-select-' + block_id + '">' +
              '<div class="form-group"><label class="form-control-label"' +
              ' for="Catalog_catalog_item_properties_' + block_id + '_value_id-ts-control"' +
              ' id="Catalog_catalog_item_properties_' + block_id + '_value_id-ts-label">Значение (выборка)</label>' +
              '<div class="form-widget">' +
...

Html вставляется, select с нужными значениями есть, но после выбора и апдейта easy admin не дает получить данные, показывает ошибку "Эта форма не должна содержать дополнительных полей.". Знаю, что за это отвечает настройка allow_extra_fields, но я ее и так и так уже крутил, вставлял куда только можно (и в изначальную форму в configureFields и в поле CatalogPropertyField), не помогает.

Подскажите, как могу реализовать этот момент. Может что-то не так делаю с allow_extra_fields, может какие-то другие опции есть


Ответы (0 шт):