Intereting Posts
Предотвращение спуфинга ссылок CURL Неустранимая ошибка: максимальное время выполнения 30 секунд превышено в C: как печатать переменную javascript в php? Блок Magento Приходит с пустым выходом PHP Json_encode меняет пробелы на плюс символы + Проблема с использованием правила Laravel & Regex (OR) Как избавиться от исключения Unipot SoapFault: выглядит так, как будто у нас нет XML-документа в … "error Imagick: UnableToLoadModule Как разрешить ошибку cURL 60: сертификат SSL в Laravel 5 при аутентификации Facebook Сравните два ассоциативных массива относительно порядка ключей Предупреждение: Отсутствует граница в данных POST с несколькими данными / формами данных в Unknown в строке 0 Предотвращение одновременных транзакций в веб-приложении Как исправить Неустранимая ошибка: Недостаточно памяти (выделено) (попытался выделить байты) в php Функция успеха Ajax Правильное выполнение оболочки в PHP

Как вставить контроллер в Twig с помощью «render» в Silex

Должна ли она работать в Силексе с symfony / twig-bridge?

{{ render(controller('MyController')) }} 

Теперь у меня есть сообщение:

Twig_Error_Syntax: Функция «контроллер» не существует в «…

Я нашел эту работу:

 {{ render(controller('services.controller:action', {[params]}) }} 

И вы можете определить контроллер как услугу:

 $app['services.controller'] = function() use ($dependecy1, .., $dependencyN){ return new \\PathToYourControllerClass($dependecy1, .., $dependencyN); } 

Вы можете использовать его так:

 {{ render(path('your_route_id', {'id': id, 'anotherParam': param})) }} 

Я нашел эту работу:

 {{ render(controller('Full\\Namespace\\To\\Your\\Controller::listAction')) }} 

пожалуйста, не забывайте двойную косую черту '\\'

Пример:

 {{ render(controller('Acme\\ProductController::listAction')) }} 

В вашем ProductController (я использую Doctrine 2 в этом примере):

 public function listAction(Application $application) { $em = $application['orm.em']; $produits = $em->getRepository('Acme\Entity\Produit')->findAll(); return $application['twig']->render('list.html.twig', array( 'products' => $products )); } 

Затем в вашем списке.html.twig

 {% for product in products %} <h2> {{ product.name }} </h2> {% endfor %}