0

'items'モジュールの名前を'products'に変更するルートがあり、ほとんどの場合は機能しますが、URLにコントローラーまたはアクションが明示的に設定されていない場合は機能しません。たとえば、example.com/productsは機能しませんが、example.com/items機能し、はと同じexample.com/products/index/indexです。それを修正する方法、またはコントローラーとアクションをオプションにする方法はありますか?

$router->addRoute('item-alias', new Zend_Controller_Router_Route('products/:controller/:action', array(
    'module'=>'items'
)));

編集:

に変更すると動作するようです

$router->addRoute('item-alias', new Zend_Controller_Router_Route('products/:controller/:action/*', array(
    'module'=>'items'
    'controller'=>'index',
    'action'=>'index'
)));

'*'を使用すると、追加のオプションパラメータを追加できます。example.com/products/index/index/page/2

4

1 に答える 1

1

コントローラとアクションのデフォルト値を設定します。そうすれば、それらはオプションのパラメーターになり、スキップできます。

于 2012-05-19T01:11:33.643 に答える