当我在网址中输入?t = 1 时,如何应用不同的模板(视图)?
示例:
mysite.com -> opens home with default template, let's say home.twig
mysite.com/?t=1 -> opens home with another template : home1.twig (or 1/home.twig)
有可能吗?
谢谢:)
答案 0 :(得分:1)
当然,您可以为此定义不同的路线,但第二个网址应该看起来像" mysite.com/1":
route_1:
pattern: /
defaults: { _controller: AppBundle:Index:home }
route_2:
pattern: /{t}
defaults: { _controller: AppBundle:Index:custom }
requirements:
t: '[0-9]+'
第二种方法是根据" t"的存在加载不同的视图。参数:
public function homeAction(Request $request)
{
$view = $request->query->has('t') && $request->query->get('t') == 1 ? 'home1.twig.html' : 'home.twig.html';
return $this->render($view, $params);
}