2013-09-10 1 views
2

Как я могу отобразить значение массива на entitty в приложении списка сонатных админов? Я пытался сделать что-то вроде этого:Как показать значение Entity массива типа в действии списка в Sonata Admin Bundle?

  ->add('daysOfWeek', null, array('type' => 'array')) 

в методе configureListFields, но затем я получаю сообщение об ошибке: «Исключение было брошено во время рендеринга шаблона (» Примечание: Массив для преобразования строки»

ответ

0

Вы должны добавить шаблон для специальных полей, я не думаю, что есть такая вещь, как способ отображения полей массива «по умолчанию»

anwser должен был сделать это так:.

->add('daysOfWeek', 'array', array('template' => 'WshBackendBundle:EventAdmin:list_days_of_week.html.twig')) 
+0

'Невозможно загрузить массив типов" 'Тип массива в сонате не существует, я ошибаюсь? –

-1

Метод шаблона работает хорошо, но для простой сущности вы можете использовать тип 'collection'

У меня есть объект Post с множеством тегов. Таким образом, переменная $ tags в объекте Post является коллекцией Tag.

Теперь в вашем PostAdmin:

protected function configureListFields(ListMapper $listMapper) 
    { 
     $listMapper->addIdentifier('name') 
      ... 
      ->add('tags', ' collection') 
      ... 
} 

Тогда вам нужен метод ToString в теге объекта.

function __toString() { 
    return $this->getName(); 
}