0

メッセージや更新の数、ギフト、新しい友達リクエスト、メッセージ数などの統計を含むメニュー バーを表示したいと考えています。

このメニューはすべてのページに表示されます。すべての統計を取得し、部分的にレイアウトにレンダリングして、それを忘れる単一のメソッドを作成するにはどうすればよいですか?

他のアクションでは、ページの主な機能に集中してください。メニューを気にせずに。

Yiiでこれを達成するにはどうすればよいですか?

4

3 に答える 3

0

/protected/components/extendingclassname に CMenu を拡張するクラスを作成する必要があります

<?php
 Yii::import('zii.widgets.CMenu');

class Notifications extends CMenu
{
   public function init()
    {
      //query

    $requestor=Yii::app()->user->name; 
    $count = Requests::model()->count( 'requestor=:requestor',                        array('requestor'         =>      $requestor));

    // Now add the menu items:
    $this->items = array(
        array(
            'label' => "$count New messages",
            'url'   => array('user/notifications'),
        ),
        // ...
    );

    parent::init();
   }
 }

?>

次に、/layouts.main.php 内に次の行を含めます。このクラスをどこで使用すればよいかわからない初心者の助けになることを願っています。Michael Härtl が言い忘れたことです。

于 2013-11-06T12:04:52.440 に答える