Я рассматривал различные похожие вопросы и ответы, но ни одна из них не подходит или не решает мою проблему. Я чувствую, что мне не хватает чего-то очевидного, потому что это кажется сумасшедшим простым и общим. Anyways:табличный вид объектов в symfony2 с веточкой
Я хочу построить табличный вид, из которого пользователь может выбрать объекты для дальнейшей обработки. Очевидно, мне нужно отображать больше, чем просто имя, я хочу добавить множество данных.
«сущность» формы типа, кажется естественным выбором, поэтому я определил тип формы, включая следующее:
$builder->add('items', 'entity', array(
'multiple'=>true,
'expanded'=>true,
'class'=>'MySiteBundle:Item', 'property'=>'name', 'query_builder'=>function(EntityRepository $er) use ($catagory) {
return $er->createQueryBuilder('s')->where('s.category = :cat')->andWhere('s.available=true')->orderBy('s.name')->setParameters(array('cat'=>$category));
}));
Думая это будет каким-то образом дать мне доступ к сущности в веточке. Но независимо от того, что я пытаюсь, с помощью form.items.vars или .get («value») или двух десятков других вещей, предложенных для подобных вопросов, ничего не работает.
Все, что я хочу, это таблица с данными о позиции (имя, цена и т. Д. И т. Д.), И я не могу поверить, что это так сложно. Какую легкую, очевидную вещь мне не хватает?
Мне нужно использовать форму, потому что есть другие данные, которые нужно ввести пользователю, и я хочу использовать валидацию.
Спасибо, это правильный подход. Я хотел бы добавить, что использование индексированных ассоциаций (http://docs.doctrine-project.org/en/latest/tutorials/working-with-indexed-associations.html) делает это очень простым в реализации. – Tom
Хм. Не знал об этом. Хорошо знать! :) –
Было бы хорошо, если бы вы могли предоставить пример для 'make ключей массива элементов соответствуют их идентификаторам ' –