0

こんにちは、デフォルトのレイアウトで要素をフェッチしようとしていますが、ブロックの表示に関する CakePHP のドキュメントに従っているものは何も表示されず、エラーが見つかりませんでした。

マイ MenusController.php

<?php

class MenusController extends AppController{

    public function beforeFilter(){

        parent::beforeFilter();
        $this->Auth->allow();

    }

    public function get_menu(){

      if ($this->Auth->user()['role'] == 'admin'){
        $this->set('dashboard_menu',$this->dashboard_menu_admin());
      }
      else
        $this->set('dashboard_menu',$this->dashboard_menu_user());

    }

    private function dashboard_menu_admin(){

        $dashBoardMenu = array(
                            array(
                                'elementName' => 'Usuarios',
                                'iconName'=> 'user',
                                'action' => 'users'
                               ),
                            array('elementName' => 'Personal',
                                  'iconName' => 'user',
                                  'action'=>'personal'
                                  ),
                            array('elementName' => 'Resumen Semanal',
                                  'iconName' => 'edit',
                                  'action' => 'resumen'
                                  ),
                            array('elementName' => 'Estadisticas',
                                  'iconName' => 'signal',
                                  'action' => '#'
                                  ),
                            array('elementName' => 'Tareas',
                                  'iconName' => 'check',
                                  'action' => '#'
                                  ),
                            array('elementName' => 'Calendario',
                                  'iconName' => 'calendar',
                                  'action' => '#'),
                            array('elementName' => 'Nube',
                                  'iconName' => 'cloud',
                                  'action'=> '#')
                   );

        return $dashBoardMenu;

    }

    private function dashboard_menu_user(){

        $dashBoardMenu = array(
                            array(
                                'elementName' => 'Usuarios',
                                'iconName'=> 'user',
                                'action' => 'users'
                               ),
                            array('elementName' => 'Resumen Semanal',
                                  'iconName' => 'edit',
                                  'action' => 'resumen'
                                  ),
                            array('elementName' => 'Estadisticas',
                                  'iconName' => 'signal',
                                  'action' => '#'
                                  ),
                            array('elementName' => 'Tareas',
                                  'iconName' => 'check',
                                  'action' => '#'
                                  ),
                            array('elementName' => 'Calendario',
                                  'iconName' => 'calendar',
                                  'action' => '#'),
                            array('elementName' => 'Nube',
                                  'iconName' => 'cloud',
                                  'action'=> '#')
                   );

        return $dashBoardMenu;

    }

}

View/Menus/get_menu.ctp で

<?php
$this->start('menu');
    echo $this->element('menu/dashboard_menu',array('menuItems' => $dashboard_menu));
$this->end();   

?>

view/layouts/default.ctp の一部

    <div class="container-fluid" id="container">

        <div class="row-fluid"> 
            <?php if ($logged_in): ?>

              <?php  echo $this->fetch('menu'); //THiS IS NOT DISPLAYING ANYTHING  ?>

            <?php endif; ?>
            <div class="span9" id="content">
                <?php echo $this->Session->flash(); ?>
                <?php echo $this->Session->flash('auth'); ?>
                <?php echo $this->fetch('content'); ?>

            </div>

        </div>

    </div>

start メソッドと end メソッドの間にエコー「何か」を出力しようとしていますが、何もありません。私はそれがフェッチされていないと思いますが、理由はわかりません

誰かが私を助けることができます。ありがとう。

4

0 に答える 0