0

我正在学习 Symfony2,并且正在做一些小测试。

好吧,我制作了一个小 html 来测试树枝模板。

<html>
    <head>
        <title>test00</title>
        <link rel="stylesheet" href="test.css" />
</head>
<body>
    <div id="test">
        <img src="test.png" /><br />
        <a href="test.php">test</a>
    </div>
</body>

并且文件在html的同一目录中。

然后将所有文件(html、css 和图像)复制到我的测试中:/var/www/Symfony/src/Test/TestBundle/Resources/views/Default 并将 html 重命名为 html.twig。

但是当使用这个 html 作为 twig 模板时会失败,因为 Symphony 尝试使用“http://localhost/Symfony/web/test.png”作为链接图像。

是的,我已阅读文档并知道“资产”,我可以使用一些示例 test.png')" /> 更改文件的路径,并将所有文件复制到 budle 中的 web 目录。

但我想知道“是否有任何工具可以将 html 转换为 twig?” 因为例如我不能对我的老板说:

“Symfony2 很棒。但是你的设计师必须学习 Twig,当她用 Dreamweaver 完成 html 时,她必须更改所有指向 CSS 和图像的链接以制作模板……是的,她什么都看不到,只能发送给我放入网络服务器以检查它是否正确。”

你希望我的老板对 Symfony2 有什么看法?他会认为这很疯狂,这是两次工作。

我认为最好的是它是一个自动工具,可以将带有相对路径的 html 翻译成 twig 之类的东西,将包文件放入 web 目录中。并且设计者不需要知道任何东西,只需要制作漂亮的 html,几乎没有奇怪的东西,比如放 {{page_name}} 而不是“页面名称”。

问候。

4

2 回答 2

3

从 html 编码人员的角度来看,Twig 是 HTML。只要在您的服务器上设置模板语言支持,编写 twig 或 HTML 就没有区别。唯一的区别是<h1>{{variables}}<\h1>.您的 HTML 编码人员应该知道他们可以访问哪些变量。话虽如此,从开发人员的角度来看,twig 要多得多,所以我并没有简化 twig。但是如果有人知道 HTML,他们就会知道如何处理 twig。

于 2012-12-30T04:08:39.993 回答
0
Then copy all files (html, css and the images) to my test: 
/var/www/Symfony/src/Test/TestBundle/Resources/views/Default And rename the html to html.twig.

Nope. Your html.twig files need to end up somewhere under views so the template processor can get to them. However, your css and images need to be copied to your root web directory. Same place where app.php lives.

But fail when use this html as twig template, because the Symphony try to use
"http://localhost/Symfony/web/test.png" as link the image.

It's is not symfony generating this link but your web browser. Use Control-U to examine the generated html source from within your browser. You will find that your links such as href="test.css" have not been changed. Twig will not change anything unless it has has some curly brackets around it.

So your designer can continue to use her current workflow and deliver a set of files. You just need to deploy the files to the correct locations.

Of course symfony/twig can do a lot more that simple variable replacements so eventually you might want to change things. But you can get started just fine.

于 2012-12-30T12:20:33.747 回答