2012-01-13 45 views
0

我的网站我有一些内容可以投票(+/-)。现在工作正常,所有内容都有自己的选民。 现在我正在寻找一种方法来创建一个实体(votedModel,votedId,用户,投票)的单一投票捆绑。 基本上捆绑已准备就绪。我的问题是如何使用它。我希望能够做到这样的事情:如何从其他控制器获取部分页面

class ... extends Controller { 
    function showAction(Request $request,$id) { 
     ... 
     $voter=new Voter('myCOntentType',$id,$userid); 

     ... 
     return $this->render('...', array('voter'=>$voter->getVoter(),...)) 
    } 
} 

getVoter()将创建选民视图。

  • 但我堆积如何开始。我试图以这种方式呼叫其他控制器,但不能创建选民表格。

  • 它与$voter=$this->forward('VoterbundleNewAction', array('id=>$id,'user'=>$user)->getContent();
    合作但这不是我想到的。

我认为我的方法是错误的,我可能需要做这个服务。我找不到我的路。

回答

2

你可以在你的树枝模板中使用include或render来获得其他模板的输出。所以,你可以创建一个包含您的投票系统中的HTML模板(比如,voter.html.twig),并在树枝,在你需要选民的任何地方,你可以使用:

{% include "AcmeVoterBundle:Voter:voter.html.twig" %} 

{% render "AcmeVoterBundle:Voter:voter" with {"item": item} %} 

在第一个例子,只需简单的另一个模板(参见:http://symfony.com/doc/current/book/templating.html#including-other-templates),在后一种情况下,你实际上执行控制器的另一操作方法和该输出为当前模板(见还有:http://symfony.com/doc/current/book/templating.html#embedding-controllers

相关问题