0

メインレイアウトからの呼び出しは次のとおりです。

<div id="mainmenu">

        <?php 
                $this->widget('zii.widgets.CMenu',array(
            'items'=>array(
                array('label'=>'Home', 'url'=>array('/site/index')),
                array('label'=>'Services', 'url'=>array('/site/page', 'view'=>'services')),
                array('label'=>'About', 'url'=>array('/site/page', 'view'=>'about')),
                array('label'=>'Contact', 'url'=>array('/site/contact')),
                                array('label'=>'User', 'url'=>array('/user/index')),
                array('label'=>'Login', 'url'=>array('/site/login'), 'visible'=>Yii::app()->user->isGuest),
                array('label'=>'Logout ('.Yii::app()->user->name.')', 'url'=>array('/site/logout'), 'visible'=>!Yii::app()->user->isGuest)
            ),
        )); ?>
    </div>

私が単純に呼び出すと、次のよう$this->widgetになります。

CException: プロパティ "CWidgetFactory.CGridView" が定義されていません。

これは main.php 構成ファイルに関連していますか?

'widgetFactory'=>array(
        'CGridView'=>array(
          'cssFile'=>'/css/gridview/styles.css',
          'selectableRows'=>0,
          'pager'=>array(
            'cssFile'=>'/css/pager.css',
           ),
                ),

               'CListView'=>array(
                 'cssFile'=>'/css/listview/styles.css',
                 'pager'=>array(
                    'cssFile'=>'/css/pager.css',
                 ),
               )
),

何か不足していますか?しばらくの間、このエラーで立ち往生しました。理由が見つかりません。

4

1 に答える 1

1

はい、何かが欠けています。ウィジェットのインブリケーションを忘れました。

'widgetFactory'=>array(
  'widgets' => array(
    'CGridView'=>array(
      'cssFile'=>'/css/gridview/styles.css',
      'selectableRows'=>0,
      'pager'=>array(
        'cssFile'=>'/css/pager.css',
       ),
            ),

           'CListView'=>array(
             'cssFile'=>'/css/listview/styles.css',
             'pager'=>array(
                'cssFile'=>'/css/pager.css',
             ),
           )
   )
),
于 2013-10-02T11:49:51.997 に答える