2017-08-09 46 views
2

我有在Symfony的路线的问题,我有一个路线的设置,需要符合以下:Symfony的3路由允许hyphes /占位符值破折号

/my-test-route-holidays/ 

上述的“我 - 测试 - 路线“是占位符变量。

symfony的路线如下:

overview: 
    path: /{var}-holidays/ 
    defaults: { _controller: AppBundle:Overview:index } 

的Symfony找不到路线,像下面的路线确实没有变破折号/连字符的工作:

/test-holidays/ 

所以我的问题是,如何在路由占位符内允许连字符?

感谢

回答

1

我设法解决这个我自己,这是导致我的错误答案的文档的快速脱脂。

我几次碰到这个网页上Symfonys网站而努力研究的答案:Symfony Docs Current Slash in Parameter

在他们的例子:

share: 
    path:  /share/{token} 
    defaults: { _controller: AppBundle:Default:share } 
    requirements: 
     token: .+ 

你可以看到,他们已经增加了“要求”和下方那个“标记”,我只是假设“标记”与正则表达式有关,但实际上它涉及到你在“路径”中的占位符,它们应该匹配。

下面是我有什么:

overview: 
    path: /{var}-holidays/ 
    defaults: { _controller: AppBundle:Overview:index } 
    requirements: 
     token: .+ 

但我真正需要的是,以取代在“要求”与“无功”的“令牌”。

overview: 
    path: /{var}-holidays/ 
    defaults: { _controller: AppBundle:Overview:index } 
    requirements: 
     var: .+ 

你知道什么,它的工作原理!

我希望别人认为这有用。

相关问题