【问题标题】:How to add app_dev.php to asset in Symfony 2如何在 Symfony 2 中将 app_dev.php 添加到资产
【发布时间】:2013-09-06 17:01:59
【问题描述】:

我正在使用:

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

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

http://localhost.project/contact.

但我在开发环境中。

如何为开发环境制作资产展示url?

应该是这样的:

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

没有

http://localhost.project/web/contact

【问题讨论】:

  • 通过 app_dev.php 调用您的页面以进入开发环境。

标签: url symfony assets


【解决方案1】:

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

【讨论】:

    【解决方案2】:

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

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

    //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 有所不同,并拥有您计划使用的域。

    当您使用 twig 资产功能时,它会在您想要的基础 URL 前添加此设置。

    {{ asset('contact') }}
    

    会变成:

    http://localhost.project/web/contact
    

    话虽如此。资产是图像、css、javascript、字体等。如果您尝试在应用程序中创建页面的 url,那么您需要使用 twig path 函数。

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

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

    【讨论】:

      猜你喜欢
      • 2013-06-15
      • 1970-01-01
      • 2012-04-13
      • 2012-10-30
      • 1970-01-01
      • 2016-07-29
      • 1970-01-01
      • 2013-09-28
      • 2016-08-09
      相关资源
      最近更新 更多