Symfony教程是错误的?
问题描述:
我试图遵循symfony的教程在:Symfony教程是错误的?
http://symfony.com/doc/current/book/page_creation.html#step-1-create-the-route
但在某一点上我已经决定使用PHP替代树枝。
,所以我试图在第3步中使用模板的工作和我的网页告诉我这条线
extend('::base.html.php') ?> Hello escape($name) ?>!
不知道这是从教程的错误,因为他们通常与树枝选择工作或如果我这样做有问题。 它就像我的网页在尝试扩展它时不会识别php。
这是我试图渲染页面的全码:
<!-- src/Acme/HelloBundle/Resources/views/Hello/index.html.php -->
<?php $view->extend('::base.html.php') ?>
Hello <?php echo $view->escape($name) ?>!
,我在这个网址HTTP运行的页面://本地主机:8080 /网络/ app_dev.php /你好/彼得
这是我的控制器:
class HelloController extends Controller
{
public function indexAction($name)
{
// return $this->render(
// 'AcmeHelloBundle:Hello:index.html.twig',
// array('name' => $name)
//);
// render a PHP template instead
return $this->render(
'AcmeHelloBundle:Hello:index.html.php',
array('name' => $name)
);
}
}
和我的基地:
!-- app/Resources/views/base.html.php -->
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title><?php $view['slots']->output('title', 'Welcome!') ?></title>
<?php $view['slots']->output('stylesheets') ?>
<link rel="shortcut icon" href="<?php echo $view['assets']->getUrl('favicon.ico') ?>" />
</head>
<body>
<?php $view['slots']->output('_content') ?>
<?php $view['slots']->output('javascripts') ?>
</body>
</html>
请注意,我正在使用/ web /这不在本教程中。可能这与问题有关?因为我告诉基础模型在::?我怎样才能解决这个问题?
答
如果您查看文档中的"How to use PHP instead of Twig for Templates"文章,您会发现需要将PHP注册为模板引擎。
假设你使用YAML作为配置格式:
# app/config/config.yml
framework:
# ...
templating: { engines: ['twig', 'php'] }
你添加PHP作为模板引擎? – 2013-03-03 19:05:02
除了hellocontroller代码外,它并未包含在本教程中。我搜索文件夹的东西改变,但没有发现任何东西 – 2013-03-03 19:06:46
感谢发现它的另一个教程http://symfony.com/doc/2.0/cookbook/templating/PHP.html如果你提交一个答案虐待接受它,这是真正愚蠢的错误......但是当你开始学习一个新的框架时会发生什么:P – 2013-03-03 19:08:56