[英]Yii2 include from vendor directory
我有yii2基本版。 我想使用Yii2 GridView。 使用我已安裝並更新的文檔 。 現在我可以看到目錄/basic/vendor
目錄中的目錄./kartik-v
我把它改成了./kartik
,它的子目錄是yii2-grid
to grid
現在據說在config中包含了模塊。 我轉到標准路徑: /config/web.php
並添加此塊作為配置的一部分:
'modules' => [
'gridview' => [
'class' => '\kartik\grid\Module'
// enter optional module parameters below - only if you need to
// use your own export download action or custom translation
// message source
// 'downloadAction' => 'gridview/export/download',
// 'i18n' => []
]
],
我怎樣才能在視圖中使用它,例如,現在? 這是我的觀點代碼,它說它無法在那里找到它。
use app\vendor\kartik\grid\GridView;
$dataProvider = null;
echo GridView::widget([
'dataProvider' => $dataProvider,
'columns' => [
'id',
'name',
'created_at:datetime',
],
]) ;
需要一些幫助。 UPD1感謝Tim Ogilvy,我明白我應該使用命名空間來獲取它,並且沒有必要在config / php中添加。 如果我錯了糾正我。
閱讀Yii手冊以進行自動加載 。
它解釋了加載類的幾種不同方法,包括使用/vendor/autoload.php
這是作曲家自動加載器。
無論哪種方式,一旦您正確設置了自動加載器,您就應該能夠通過gridview文檔中顯示的供應商命名空間來引用gridview 。
從“樣式表”部分中獲取的示例:
use kartik\grid\GridView;
// Generate a bootstrap responsive striped table with row highlighted on hover
echo GridView::widget([
'dataProvider'=> $dataProvider,
'filterModel' => $searchModel,
'columns' => $gridColumns,
'responsive'=>true,
'hover'=>true
]);
請注意, use
語句使用反斜杠而不是正斜杠 。
對於Windows用戶來說,並不是很明顯這不是路徑,但Linux和mac用戶可以立即識別出這是指名稱空間,而不是路徑。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.