Php 如何从其他控制器获取部分页面
我的网站我有一些内容可以投票(+/-)。当所有内容都有自己的投票者时,它现在运行良好。 现在,我正在寻找一种方法,用一个实体(votedModel、votedId、user、vote)创建一个投票包。 基本上,包已经准备好了。我的问题是如何使用它。我希望能够做到以下几点:Php 如何从其他控制器获取部分页面,php,symfony,Php,Symfony,我的网站我有一些内容可以投票(+/-)。当所有内容都有自己的投票者时,它现在运行良好。 现在,我正在寻找一种方法,用一个实体(votedModel、votedId、user、vote)创建一个投票包。 基本上,包已经准备好了。我的问题是如何使用它。我希望能够做到以下几点: class ... extends Controller { function showAction(Request $request,$id) { ... $voter=new Vot
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();
但我没有想到这一点
我认为我的方法是完全错误的,我可能需要作为服务来做这件事。我找不到自己的方法。你可以在你的小枝模板中使用“包含”或“渲染”来获取其他模板的输出。因此,你可以创建一个模板(例如,voter.html.twig)它包含投票系统的HTML,在小树枝中,在需要投票人的任何地方,您都可以使用:
{% include "AcmeVoterBundle:Voter:voter.html.twig" %}
或
在第一个示例中,您只需包含另一个模板(另请参见:),在后一种情况下,您实际执行控制器的另一个操作方法,并将其输出放入当前模板中(另请参见:)
{% render "AcmeVoterBundle:Voter:voter" with {"item": item} %}