0

私はsymfony1.0を使用しており、以下のようにいくつかのURLのルーティングを設定しています。

static_pages:
url: docs/:page.htm
param: { module: docs, action: index }

ここで、別の種類のURLのルーティングを設定しました。

URL is http://news4u.com/search/description/id/3/css/a/act/a

ルーティングを以下のように設定しました

description:
url: /search/description/id/:id/css/:manu/act/:mgh
param: { module: search, action: description}

'css'と'act'の値を取得するためのこれは正しい形式ですか。URLにcssパラメータがない場合、つまりURLが次のようになっている場合:

http://news4u.com/search/description/id/3/css//act/a

--getRequestParameter('css')の値は'act'として表示され、-getRequestParameter('act')の値は空です

だから、私はルーティングを適用しようとしました、そして間違っているなら私を訂正してください。上記のルーティング構成を使用して、望ましい出力が得られません。

4

1 に答える 1

0

URLに存在するユーザーを検索モジュールと説明アクションに送信する場合を除き、routing.ymlファイルのパラメーターとして「id」、「css」、「act」を指定する必要はありません。

routing.ymlで次のルールを使用しても機能します。

default:
  url:   /:module/:action/*

その後、あなたは使用できるはずです

url_for('search/description', array(
   'id' => 4, 
   'css' => 'something', 
   'act' => 'blah'
); 

次のようなリンクを生成するには:/ search / description / id / 4 / css / something / act / blah

于 2012-06-25T03:36:45.273 に答える