0

次のようなルーティング/URL 構造を想定します。

http://www.example.com/vehicles/manage

このページがデータベースから車両をリストする場所。結果を色などでフィルタリングするためのフォームを追加したい場合、フィルタリング フォームの GET アクションがクエリ文字列を追加する URL になります。

http://www.example.com/vehicles/manage?colour=blue

どうしても URL 構造にこだわりたいとき

http://www.example.com/vehicles/manage/colour/blue

アプリケーションのどこにもクエリ文字列を含めたくないのですが、管理インターフェイスには、管理しやすくするために集計された結果をフィルタリングする必要がある例が無数にあります。代替ソリューションは大歓迎です。

ありがとう

4

1 に答える 1

0

これを実現するには、Redirectorアクションヘルパーを使用できます。

これでインスタンス化します:

$ redirector = new Zend_Controller_Action_Helper_Redirector();

次に、モジュール/コントローラー/アクション/パラメーターを次のように渡します。

$ redirector-> direct('manage'、'vehicles'、'default'、$ params));を返します。

フィルタが含まれる場所$paramsは次のようになります。

array('colour' =>'blue'、'wheel_trims' =>'alloy');

お役に立てば幸いです:>

編集:ああ、manageAction()で値を取得するには、次のようにします。

$ request = $ this-> getRequest();
$ params = $ request-> getParams();

于 2012-08-01T16:42:49.170 に答える