doupao3662 2014-04-19 20:54
浏览 61
已采纳

基于主机的Symfony路由

I'd like to define a route 'product_page' which will map to different patterns based on the host. The patterns for each route will be different, but I'd like for the route name to be the same so that I can use the same name in my console commands when generating URLs via the route (based on passed host name). I cannot figure out how to make this happen, since it seems that routes of the same name overwrite previous routes. For example:

product_page:
    pattern:  /product_page_type_1/{id}
    host: domain1.com
    defaults: { _controller: AcmeDemoBundle:Default:index}
    requirements:
        id: '[\d]+'

product_page:
    pattern:  /product_page_type_2/{id}
    host: domain2.com
    defaults: { _controller: AcmeDemoBundle:Default:index}
    requirements:
        id: '[\d]+'

Then, in my console command, I'd like to generate a URL based on the product_page route and host. For example:

//should equal http://domain1.com/product_page_type_1/999
$this->getContainer()->get('router')->generate('product_page', array('id' => 99, 'host' => 'domain1.com'), UrlGenerator::ABSOLUTE_URL)

//should equal http://domain2.com/product_page_type_2/999
$this->getContainer()->get('router')->generate('product_page', array('id' => 99, 'host' => 'domain2.com'), UrlGenerator::ABSOLUTE_URL)

Is this even possible?

  • 写回答

1条回答 默认 最新

  • dscqrkvr9562034621 2014-04-19 21:07
    关注

    Because your second route is overwriting the first route. They shouldn't be named the same, just name them: domain1_product_page and domain2_product_page or something similar.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 集合A由3个2行4列二维数组构成,从集合A中任意取一个二维数组元素、如果该二维数组元素的对应列位置的上、下两数都是奇数,而且仅有2个列是奇数/奇数,则该数组有意义,并放入集合B中打印输出。
  • ¥15 电信IPV6 无法外网访问吗
  • ¥15 有偿求效果比较好的遥感影像匹配的c++代码
  • ¥15 博主,你好,我下载了你的智能网联汽车辅助驾驶安全信息检测系统,现在不会运行,可以教我吗,
  • ¥15 怎么在excle输入下列公式
  • ¥15 Arduino,利用modbus的RS485协议,进行对外置的温湿度传感器进行数据读取
  • ¥15 vhdl+MODELSIM
  • ¥20 simulink中怎么使用solve函数?
  • ¥30 dspbuilder中使用signalcompiler时报错Error during compilation: Fitter failed,求解决办法
  • ¥15 没有注册类 (异常来自 HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))