私はPHP Phalconを使用しています。私は2つの異なるメニューを実装したいと思います。最初は通常のユーザー、2番目は管理者です。メニューを簡単に拡張するための2つのメニューテンプレートが必要です。PHP - mvcフレームワークの2種類のメニュー
は今、私はこのような何かを持っている:
//Main template:
[...]
if (session->role == 'admin')
include 'adminmenu.volt'
elseif (session->role == 'user')
include 'usermenu.volt'
{{ get_content() }} //from upper templates
[...]
(ログに記録されないユーザーがメニューを持っていません。)
私は、これは完全に間違いであると考えられます。まず第一に、私はアクティブなポジションをどのように強調すべきか考えていません。次に、私はコントローラからメニューをコントロールしたいと思います。たとえば、データベース内の何かを変更することによって特別なオプションを追加します。 これを行う適切な方法はありますか?私は、JavaScript、モジュール、またはマイクロサービスを使用せずに簡単なソリューションを取得したいと考えています。
もちろん、このコードは擬似コードです。 – Robin71
アレイやXMLファイルからメニューを読み込み、ユーザーが各メニュー項目を表示できる場合はACLルールで確認してください。 – Timothy
@Timothyに同意します。あなたが作成したメニューを反復するテンプレートは1つだけですロジックコンポーネント、それはコントローラかaclか何か.. –