Получение данных через настраиваемый репозиторий в расширении Twig

Я хотел бы отображать новые уведомления на каждой странице моего веб-приложения symfony 2. Мне посоветовали использовать для этого Twig Extension. Я создал функцию getFriendRequests в этом расширении, но я не знаю, является ли хорошей практикой получать данные через мой пользовательский репозиторий в расширении twig: прямо сейчас он выдает мне ошибку, что он не может найти метод getDoctrine .

<?php

namespace Tennisconnect\DashboardBundle\Extension;

class NotificationTwigExtension extends \Twig_Extension
{
    public function getFriendRequests($user)
    {
        $users = $this->getDoctrine()
            ->getRepository('TennisconnectUserBundle:User')
            ->getFriendRequests();
        return count($users);
    }

    public function getName()
    {
        return 'notification';
    }

    public function getFunctions()
    {
        return array(
            'getFriendRequests' => new \Twig_Function_Method($this, 'getFriendRequests'));
    }
}
11
задан mattyh88 9 December 2011 в 19:10
поделиться