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" (/) を解析した後、Empty module and/or action というエラーが発生します。 それらを再配置すると、文字はアクション ビューを指しますが、アクション アルファリストを指す必要があります。
なぜそれらは互いに上書きするのですか?
更新しました
これは、別のWebサイトで機能したケースです。
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: ['', '/']