Задать вопрос
@e-hot

Как указать в атрибуте option value значение самого option для поля entity в форме в Symfony 2?

Приветствую всех. Нужна подсказка, как решить следующее недоразумение:
1. Есть класс формы ( эта форма embedded в другую форму ), в которой всего одно поле типа entity:
...
$builder->add( 'olcode', 'entity', array( 'label' => 'Код: ',
                                                   'class' => 'Acme\AppBundle\Entity\Show\Oldemand',
                                                   'query_builder' => function ( EntityRepository $er ) {
                                                                                    return $er->createQueryBuilder( 'u' )
                                                                                              ->groupBy( 'u.olcode' )
                                                                                              ->orderBy( 'u.olcode', 'ASC' );
                                                                        },
                                                   'property' => 'olcode',
                                                   'required' => false,
                                                )
                    );
...

2. Здесь я через класс сущности из таблицы БД вытаскиваю в раскрывающийся список уникальные значения ( string ) со всех записей - в списке отражаются все в единичном экземпляре уникальные значения - все нормально, то что нужно.
3. Но обнаружил странную вещь в html-разметке:
...
<option value="2137864">Silver</option>
...

должно быть:
...
<option value="Silver">Silver</option>
...

искал, откуда могло взяться 2137864 ну и подобные числовые значения в value, оказалось, Symfony 2 почему-то цепляет значения из этой же таблицы из другого столбца, хотя в сущности 'Acme\AppBundle\Entity\Show\Oldemand' эти olcode и, назовем его posrepair_id никак не пересекаются.

Вопрос: если кто сталкивался с такой ситуацией - подскажите, что не так прописано. Спасибо.
  • Вопрос задан
  • 81 просмотр
Подписаться 2 Оценить 1 комментарий
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы