Доброго времени. Столкнулся с неожиданной проблемой при изучении Symfony. Шаблонизатор Twig выдаёт следующую ошибку:
Method "..." for object "..." does not exist in ... at line
сам шаблон:
{% for all in books %}
<li>{{ all.idBook }}</li>
{% endfor %}
контроллер:
public function BookAction()
{
$repository = $this->getDoctrine()->getRepository('BookBundle:Book');
if (!$repository) {
throw $this->createNotFoundException('No book found');
}
$books = $repository->findAll();
$booksContent = $this->render('BookBundle:Default:book.html.twig', array('books' => $books));
return new Response($booksContent);
}
маппинг:
/**
* @var int
*
* @ORM\Column(name="id_book", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id_book;
public function getBookId() {return $this->id_book;}
при этом шаблон
{{ dump(books) }} выдаёт :
array:3 [▼
0 => Book {#376 ▼
#id_book: 1
...
Работает на
Symfony 3.0.2 и
Twig 1.24, config.yml - ничего не менял, дополнительных бандлов нет.