我想在Symfony2中使用点停止路由。例如:
/ blog / development(这很好)
/blog/developm.ent(需要404)
/blog/development.html(需要404)
如何使用yml实现这一目标?这就是我对上面第一个例子的看法:
s_nerds_blog_category_page:
pattern: /blog/{category}
defaults: { _controller: SNerdsBlogBundle:Default:category }
答案 0 :(得分:4)
symfony2中的路线要求:
您可以添加请求的网址需要匹配的正则表达式 requirements ,以便将其解析为特定路线:
# This example allows only digits (\d+) for {category}
blog:
path: /blog/{category}
defaults: { _controller: AcmeBlogBundle:Blog:index, category: 1 }
requirements:
category: \d+
排除包含点的路线:
# matches only routes not containing a dot
blog:
path: /blog/{category}
defaults: { _controller: AcmeBlogBundle:Blog:index, category: 1 }
requirements:
category: ^[^\.]*$
<强>解释强>:
^
- 字符串的开头[^\.]*
- 除.
以外的任何字符,任意数量的重复$
- 字符串结尾