Hi comunity…
I need to add or remove complete menu tree from NavBar in execution time depending on some config options I take from DB.
How can I do that?
Hi comunity…
I need to add or remove complete menu tree from NavBar in execution time depending on some config options I take from DB.
How can I do that?
Yii has a simple ‘visible’ option in the menu. You can query your db for example in the controller, set a session variable, and render the menu. If you’ve got to do it at every action, you can make a basecontroller, where the construction method contains the db query, and inherit every new controller from your basecontroller.
// somewhere before loading the menu, i.e. in the controller
\Yii::$app->session->set('key', false);
// render the menu
echo Menu::widget([
'items' => [
['label' => 'Login', 'url' => ['site/login'], 'visible' => Yii::$app->session->get('key')],
],
]);
I tried the Visible option and works well.
Thanks a lot.