Вызовите контроллер или просмотр (файл ветки) из самостоятельно определенного расширения ветки в smyfony2

У меня есть проблема в symfony2 на данный момент, и я не знаю, как я могу ее решить.
В рамках определенного мной нового расширения ветки я хочу вызвать контроллер или представление (файл ветки).

Как правильно это реализовать? Вы можете мне помочь? Я прочитал много интернет-страниц symfony2, но я не нашел для меня подходящего программирования.

Для лучшего понимания, почему я хочу сделать что-то подобное, вот пример моей идеи:
Я хочу, чтобы исходный код HTML в отдельном представлении. Это новое представление внедряется в другое представление путем вызова расширения ветки.

Так как я могу это понять?

Спасибо за вашу помощь.

0

Решение

Поскольку вы используете Symfony2, вы можете ввести templating обслуживание вашего внутреннего номера Twig, а затем позвоните ->render метод.

Расширение

<?php

namespace YourPackage\YourBundle\Twig\Extension;

use Symfony\Component\Templating\EngineInterface;

class Test_Extension extends \Twig_Extension
{

protected $templating;

public function __construct(EngineInterface $templating)
{
$this->templating = $templating;
}

public function getFunctions()
{
return array(
new \Twig_SimpleFunction('my_test', array($this->myTest()), array('is_safe' => array('html')))
);
}

public function myTest()
{
// do some stuffs
$data = $this->templating->render("SomeBundle:Directory:file.html.twig");
// ...
return $data;
}

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

}

services.yml

# src/YourPackage/YourBUndle/Resources/config/services.yml
services:
test.test_extension:
class: YourPackage\YourBundle\Twig\Extension\TestExtension
arguments: ['@templating']
tags:
- { name: twig.extension }
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector