我有几个规则的routing.ymlSymfony的行走1.4第一条规则覆盖下一个规则中的routing.yml
homepage:
url: /
param: { module: cars, action: index }
letters:
url: /:letter
class: sfPropelRoute
options:
model: MyCarmodelPeer
type: object
param:
module: cars
action: alphalist
linkmode: "@letters"
requirements:
letter: "([A-Z])"
sf_method: [get]
show:
url: /:slug
class: sfPropelRoute
options:
model: MyCarmodelPeer
type: object
param:
module: cars
action: view
linkmode: "@show"
requirements:
slug: "([A-Z]|0-9)"
sf_method: [get]
default:
url: /:module/:action/*
路线的主网页按预期工作。 但字母和显示路线无法正常工作。 如果第一个路由字母那么它正常工作,并且路由显示不起作用。在这种情况下,我在解析URL“/ bmw-1-series-187-5-120-2004-2008”(/)后出现错误空模块和/或操作。 如果我重新排列它们,则字母指向动作视图,但它应该指向动作alphalist。
他们为什么互相覆盖?
修订
这里有一个情况下,其他的网站,那上工作。
letters:
url: /:letter
param:
module: define
action: alphalist
linkmode: "@letters"
cachename: "letters"
layer: "@default-layer"
requirements:
letter: "([A-Z]|0-9)"
disclaimer:
url: /medical-disclaimer/
param:
module: define
action: disclaimer
default-layer:
url: /:search
param:
module: define
action: word
linkmode: "@default-layer"
cachename: "default-layer"
options:
segment_separators: ['', '/']
这怪的时候我tryed,但即使我已清除了高速缓冲存储器应用解决方案,问题没有解决。但在像我这样的其他项目路由工作中。请看我更新的问题。 – VaL
您是否改变了构建网址的方式?他们的网址中是否有'/ letters /'和'/ show /'? – j0k
是的,他们是。如前所述,我改变了它们。 – VaL