使用Twig访问其他页面

问题描述:

我已经开始学习Twig了,并且想知道我将如何重定向到我的模板中的其他页面。使用Twig访问其他页面

这是我的index.php我也加载我的主页。

<?php 
require '../vendor/autoload.php'; 
$loader = new Twig_Loader_Filesystem('../recourses/views'); 
$twig = new Twig_Environment($loader); 
echo $twig->render('pages/home.twig', array(
    'project_title' => getProjectTitle() 
)); 

现在我的问题是:我怎么能到达这个页面的<a href="...."></a>? 我不能只使用<a href ="pages/home.twig">,因为它会显示代码而不是页面本身。

我试过搜索,但找不到我的溶剂。

希望任何人都可以向我解释这一点。

如果我unterstand,您不使用Symfony Standard Edition,但有些Symfony components + Twig

在这种情况下,Twig只是一个模板引擎,而Symfony功能缺失。

路径功能(ShinDarth回答)是通过在Symfony的标准版限定的树枝扩展提供:

http://symfony.com/doc/current/reference/twig_reference.html#path

所有Symfony的标准版功能在相同的定义页码:

http://symfony.com/doc/current/reference/twig_reference.html

像你这样使用树枝,你只能将路径作为变量传递并呈现为{{path_variable}}

+0

是的,没错。任何想法如何将它作为一个变量来传递? –

+0

echo $ twig-> render('pages/home.twig',array( 'project_title'=> getProjectTitle(),'path_variable'=> $ path_variable )); – Alsatian

+0

您必须使用自己的代码构建自己的url(可能使用路由组件)... – Alsatian

假设你有你的路线命名my_route

然后通过细枝你简单做:

<a href="{{ path('my_route') }}">Link to my_route</a> 

文档:http://symfony.com/doc/current/book/templating.html#linking-to-pages

+0

是的,试过了。该行会给我这个错误:“master.twig”中带有消息“未知”路径的未捕获异常'Twig_Error_Syntax' –