私は現在、同じコントローラーにアクセスするための複数の方法があるアプリケーションを構築しています。
例えば:
プレゼンター->パラメーターuser_typeを使用したアクセスコントローラーユーザー/インデックス:プレゼンター 参加者->パラメータuser_typeを使用したアクセスコントローラユーザー/インデックス:参加者
ナビゲーション.iniで、両方のパスを定義しました(読みやすくするために、ラベル、モジュール、およびACLを削除しました)。
dashboard.pages.presenter.controller = "user"
dashboard.pages.presenter.action = "index"
dashboard.pages.presenter.pages.create.controller = "user"
dashboard.pages.presenter.pages.create.action = "create"
dashboard.pages.presenter.pages.edit.controller = "user"
dashboard.pages.presenter.pages.edit.action = "edit"
dashboard.pages.attendee.controller = "user"
dashboard.pages.attendee.action = "index"
dashboard.pages.attendee.pages.create.controller = "user"
dashboard.pages.attendee.pages.create.action = "create"
dashboard.pages.attendee.pages.edit.controller = "user"
dashboard.pages.attendee.pages.edit.action = "edit"
私が抱えている問題は、出席者セクションに行くと、表示されるブレッドクラムがプレゼンター用のものであるということです。意図したとおりに機能することは理解していますが、URLパラメータに基づいて適切な「ノード」をアクティブに設定する方法を探していますuser_type
。
これを使用して:
$page = $this->view->navigation()->findOneByLabel($label);
if ($page) {
$page->setActive();
}
Zend_Navigation
ページをアクティブに設定することはできましたが、状態を「なし」に「リセット」する方法を探しています。