大佬教程收集整理的这篇文章主要介绍了symfony2 – 如何在Symfony 2和Twig中包含CSS文件?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个名为Webs / HomeBundle的包,其中我有HomeController与indexAction,呈现一个树枝模板文件:
public function indexAction() { return $this->render("WebsHomeBundle:Home:index.html.twig"); }
所以这很容易。现在我想做的是在这个Twig模板中包含一些CSS和JS文件。模板看起来像这样:
<!DOCTYPE html> <html> <head> {% block stylesheets %} <link href="{{ asset('css/main.css') }}" type="text/css" rel="stylesheet" /> {% endblock %} </head> <body> </body> </html>
我想包括的文件,main.css文件位于:
Webs/HomeController/resources/public/css/main.css
所以我的问题基本上是,我怎么在Twig模板中包含简单的CSS文件?
我使用Twig asset()函数,它只是没有击中正确的CSS路径。此外,我在控制台中运行此命令:
app/console assets:install web
这创建了一个新文件夹
/web/bundles/webshome/...
这只是链接到
src/Webs/HomeController/resources/public/
对?
问题
>在哪里放置您的资产文件,JS,CSS和图像?是否可以将它们放在Bundle / resources / public文件夹中?这是他们的正确位置吗?
>如何使用资产函数将这些资产文件包含在您的Twig模板中?如果他们在公共文件夹,我如何包括他们?
>我应该配置别的东西吗?
根据documentation – 在你的例子中,应该如下所示:
{{ asset('bundles/webshome/css/main.css') }}
提示:您也可以调用assets:install with –symlink key,因此它将在web文件夹中创建符号链接。这是非常有用的,当你经常应用js或css更改(这样,您的更改,应用于src / YouBundle / resources / public将立即反映在web文件夹,而不需要调用assets:install)
app/console assets:install web --symlink
此外,如果您希望在子模板中添加一些资源,可以为Twig块调用parent()方法。在你的情况下会是这样:
{% block stylesheets %} {{ parent() }} <link href="{{ asset('bundles/webshome/css/main.css') }}" rel="stylesheet"> {% endblock %}
以上是大佬教程为你收集整理的symfony2 – 如何在Symfony 2和Twig中包含CSS文件?全部内容,希望文章能够帮你解决symfony2 – 如何在Symfony 2和Twig中包含CSS文件?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。