2015-02-09 75 views
2

這看起來應該很簡單,但我很掙扎。使用視圖中的yii小部件

因此,當我在佈局中使用它時,下面的代碼行很好用。也就是說,從「/protected/views/layouts/baselayout.php」行:

$ this-> widget('BuildingList');

完全像它應該。它創建一個建築清單。

但是,當在視圖中使用同一行代碼時,它會失敗。也就是說,從 「/protected/views/rooms/update.php」 我得到

包括(/Var/Www/Html/Yii/Framework/Zii/Widgets/CWidget.Php):未能打開 流:沒有這樣的文件或目錄

對於它的價值,CWidget.php肯定不在「/ zii/widgets」中。這是在「/框架/網絡/部件」

但不知何故的Yii知道從哪裏佈局,而不是視圖

回答

0

嘗試通過其全名中使用的部件找到CWidget.php。

如果在/保護/組件,其中:

$this->widget('application.components.BuildingList'); 

你也可以把它添加到「進口」一節中您的配置文件,如:

'import'=> [ 
      'application.models.*', 
      'application.components.*', 
      'ext.*' 
      ],