如何在Symfony 2中将app_dev.php添加到资产

时间:2013-09-06 17:01:59

标签: url symfony assets

我正在使用:

{{ asset('contact') }} (e.g.) 

生成我的联系页面的URL,输出:

http://localhost.project/contact.

但我正处于发展环境中。

如何为开发环境制作资产显示网址?

应该是:

http://localhost.project/web/app_dev.php/contact

http://localhost.project/web/contact

2 个答案:

答案 0 :(得分:6)

您应该使用{{ path('your_route') }}生成网址。这将为开发环境生成适当的URL。

答案 1 :(得分:1)

如果您使用的是Symfony 2.3,则可以在config.yml文件中设置assets_base_url。我处理这个的方法是在我的parameter.yml文件中添加一个%domain%变量,并有一个用于生产,一个用于开发。这样,资产就会按照您的建议加载正确的URL。

将以下内容添加到框架下的配置文件中 - >模板

//app/config/config.yml

framework:
    templating:
        assets_base_url: %domain%

然后在你的parameters.yml:

//app/config/parameters.yml - Dev environment

parameters:
    domain: 'http://localhost.project/web/'

然后,对于您的生产环境,您将需要您的parameters.yml不同并拥有您计划使用的域。

使用树枝资产功能时使用此设置,它将添加您想要的基本网址。

{{ asset('contact') }}

将成为:

http://localhost.project/web/contact

话虽如此。资产是图像,CSS,javascripts,字体等等。如果您尝试在应用程序中为页面创建URL,则需要使用树枝路径功能。

{{ path('route.name') }}

这使用您在routing.yml中定义的symfony的路由名称来生成您请求的页面的URL。