встраивание сервисов в шаблоны веток - PullRequest
4 голосов
/ 25 ноября 2011

Я использую контроллеры в качестве сервисов и пытаюсь встроить эти контроллеры в шаблон веточки, используя следующий синтаксис:

{% render 'my_controller:thisAction' %}
{% render 'my_controller2:this2Action' %}
{% render 'my_controller3:this3Action' %}

Проблема в том, что вместо правильного синтаксического анализа только первый оператор рендеринга можетдля рендеринга шаблона, а следующие нет.

Есть предложения, почему возникает эта проблема?

1 Ответ

0 голосов
/ 08 августа 2012

Просто убедитесь, что соглашение об именах соблюдается. И вам не нужен ваш контроллер для обслуживания. Контроллеры предназначены для захвата Request и возврата Response.

Представьте, что у вас есть контроллер с именем Default.

namespace Renoir\SiteBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template;

class DefaultController extends Controller
{

    // ...

    public function randomNameRenderAction()
    {
       // Do some logic
    }

}

В представлении вы можете позвонить, используя

{% render 'RenoirSiteBundle:Default:randomNameRender' %}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...