是否有可能在另一个方法中调用一个方法? 我需要在另一个方法中使用“viewAction”方法的(twig呈现)输出。
由于我不想重复自己,我想再次调用“viewAction”,但是我收到一个错误,上面写着:
Catchable Fatal Error: Argument 2 passed to PrCompetitionBundle\Controller\CompetitionController::viewAction() must be an instance of Symfony\Component\HttpFoundation\Request, none given
这是因为viewAction请求ID:
public function viewAction($id,Request $request)
在控制器内部,没有请求,因此弹出此错误。
我怎样才能使用该方法?
这是因为我需要输出一个渲染的Html内容,其中包含必须填充的树枝占位符。
这与丢失的用例无关。实际上,我包括了以下内容(这些都是必要的):
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template;
use Symfony\Component\BrowserKit\Response;
use Symfony\Component\HttpFoundation\Cookie;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\HttpFoundation\Request;
use Doctrine\ORM\EntityRepository;
use Symfony\Component\DomCrawler\Crawler;
use RuntimeException;
use Wa72\HtmlPageDom\HtmlPageCrawler;
use Wa72\HtmlPageDom\HtmlPage;
对于Momemnt,我尝试将Action称为:
$request->request->set('id', $partner->getUniquename());
return $this->render('MyBundle:Output:crawl.html.twig',
array(
'source'=>$this->viewAction($partner->getUniquename(), $request),
'wrapper' => $wrapper,
)
);
最后,我只想呈现一些可能包含一些占位符甚至是表单的html代码。但是在一个将被渲染的tmeplate里面。