Php symfont路由中slug的正则表达式
我很难创建一个正则表达式来匹配URL slug[a-z](“单词”由单破折号分隔),如下所示:Php symfont路由中slug的正则表达式,php,symfony,twig,symfony-routing,Php,Symfony,Twig,Symfony Routing,我很难创建一个正则表达式来匹配URL slug[a-z](“单词”由单破折号分隔),如下所示: wordone-wordtwo-wordtree 途中: csa_platform_category: path: /c/{slug} defaults: { _controller: CSAPlatformBundle:Category:index } requirements: slug: "^[a-z]+(?:-[a-z]+)*$" 细枝: &
wordone-wordtwo-wordtree
途中:
csa_platform_category:
path: /c/{slug}
defaults: { _controller: CSAPlatformBundle:Category:index }
requirements:
slug: "^[a-z]+(?:-[a-z]+)*$"
细枝:
<a href="{{ path('csa_platform_category', {'slug': cat.slug}) }}">{{ cat.name }}</a>
显示的错误为:
在呈现模板期间引发了异常(“路由“csa_平台_类别”的参数“slug”必须匹配“[a-z]+(?:-[a-z]+)*”(“给定”)以生成相应的URL。”)
我对正则表达式很不熟悉,因此希望您能提供帮助。您遇到的错误是,您的
cat.slug
为空
(“给定”)
您应该使用PHP中的
var\u dump
或dump
检查cat对象中的数据,您需要使用正则表达式分隔符来定义正则表达式,请尝试“~^[a-z]+(?:-[a-z]+)*$”
通过添加分隔符显示一个作者错误:找不到“GET/category/mutuelle sante”的路由默认值:{u controller:CSAPlatformBundle:Category:index}要求:slug:“~^[a-z]+(?:-[a-z]+)*$~”好的,那么问题根本不在于正则表达式。