/{category}
以下的路径,而且我有类别名称为
Category/Brand
如果URL是这样的:
domain.com/Company/Brand
然后我收到错误500有关/符号。
但是,如果在树枝我做
company.name|url_encode()
然后我得到
Company%2F%Brand
(代码可能是错的,不记得现在)
但尽管如此Symfony的告诉我,有没有匹配
和路由给我404
我怎样才能解决这个问题?
/{category}
以下的路径,而且我有类别名称为
Category/Brand
如果URL是这样的:
domain.com/Company/Brand
然后我收到错误500有关/符号。
但是,如果在树枝我做
company.name|url_encode()
然后我得到
Company%2F%Brand
(代码可能是错的,不记得现在)
但尽管如此Symfony的告诉我,有没有匹配
和路由给我404
我怎样才能解决这个问题?
好的!
我找到了解决办法here。
#PUBLICATION URL ###_publication: pattern: /{username}/{category}/{publicationid} defaults: { _controller: ###:Default:publication } requirements: _method: GET category: .+ username: .+ publicationid: \d+ #CATEGORY - should be at very end, to match all other URLS ###_category: pattern: /{category} defaults: { _controller: ###:Default:category } requirements: _method: GET category: .+
如果你的路由/ {}类和您键入的是domain.com/Company/Brand的URL,错误是正常的。
你必须配置在这样的routing.yml路线:
Company/{category}
我到底需要domain.com/company/brand或公司%%%%品牌或类似这样的东西。 – 2012-07-30 21:03:43
是你的所有类别的名字一样,一个或只有一些?
如果所有的人都遵循这一结构,你可以改变的路线:
/{company}/{brand}
并改变相应的控制器接受两个变量,而不是一个。后来你可以连接它们或者做任何你需要的东西
如果只有它们中的一些具有这种结构,你可以尝试用控制器中的某个字符组合替换目录分隔符,它创建链接,然后在该路线的控制器。例如,在控制器的模板,其中的链接显示,你可以
$nameEncoded = str_replace ('/','%%%%',$companyName);
通这个变量的模板,并用它来生成的链接,然后在接收控制器做:
$nameDecoded = str_replace ('%%%%','/',$companyName);
你能指定500错误的文本吗? – 2012-07-30 19:43:04