0

このルートは、ブートストラップ ファイルの 1 つに設定されています...

$route = new Zend_Controller_Router_Route_Regex(
    'user/(\d+)',
    array(
        'module'        => 'user',
        'controller'    => 'view',
        'action'        => 'index'
    ),
    array(
        1 => 'id'
    ),
    'user/%d'
);
$router->addRoute('user', $route);  

次に、ビュー URL ヘルパーを使用して href を作成しようとしていますが、「アセンブルできません。引数が少なすぎますか?'.

これは、リンクを生成している私のヘルパーのコードです:

$this->view->url(array('controller'=>'user', 'action' => $userID), 'user');  

URL の「ユーザー」部分を削除してもエラーにはなりませんが、リンクが常に正しく表示されるとは限りません。
これが名前だと思ったので、addRoute の下に入力した名前を参照する必要があります。

さまざまな設定でプレイしましたが、引き続きエラーが発生します。誰が私が間違っているのか見ることができますか?

ありがとう、
マーティン

4

1 に答える 1

2

これを試して

$this->view->url(array('id' => $userId), 'user', true); 

ルート (2 番目のパラメーター) で定義されているため、コントローラー/アクションを再度指定する必要はありません。3 番目のパラメーター (true) は、現在のリクエストからパラメーターをリセットします。

于 2010-08-06T14:10:34.727 に答える