如何在Yii2中全局更改默認佈局(=用於所有控制器和視圖)?我想離開main.php佈局,以防萬一我想稍後使用它。如何更改Yii2中所有控制器的默認佈局?
回答
在配置上,你可以寫默認佈局[[\yii\base\Application::$layout]]所有視圖的根:
[
...
'layout' => 'main',
'components' => [
...
]
]
您可以通過以下方式進行操作。例如,一個defaultLayout.php佈局可以這樣創建:
<?php $this->beginContent('@app/views/layouts/main.php'); ?>
<div class="container">
<div class="row">
<div class="col-lg-4">Left Side Bar</div>
<div id="content" class="col-lg-4">
<?php echo $content; ?>
</div><!-- content -->
<div class="col-lg-4">Right Side Bar</div>
</div>
</div>
<?php $this->endContent(); ?>
內部的相對作用
public function actionIndex()
{
$this->layout = 'defaultLayout';
return $this->render('index', [
'model' =>$model,
]);
}
在配置(配置/ main.php),可以覆蓋所有的意見的默認佈局
[
// ...
'components' => [
'view' => [
'layout' => 'main.php'
],
// ...
],
]
他說全球所有控制器的行動...而不是本地.. – scaisEdge
改變config/main.php是不正確的。查看正確語法的接受答案。 – TheStoryCoder
...但我想指定一個特定的佈局,而不僅僅是他們所在的文件夾。 – TheStoryCoder
只需查看文檔鏈接。使用'layoutPath',您可以爲所有控制器和操作擁有自己的佈局,並且您將保持默認佈局不變。 (就像你在你的問題中所說的那樣)。 – Clyff
如果情況並非如此,請重新編寫您的問題,並更加清楚您想要完成的工作。 – Clyff
在配置更改/ web.php文件
和前組件陣列,鑑於/佈局/ main_style創建
新樣式的名稱加入這一行。 php
'layout' => 'main_style'
使用此整個項目佈局更改
答案與已接受的答案相比沒有新增信息。 – TheStoryCoder
- 1. 更改默認控制器
- 2. 如何更改Android Studio默認佈局
- 3. 如何更改默認佈局目錄?
- 4. 更改contact_us默認佈局
- 5. 更改默認佈局
- 6. 如何使用嵌套控制器的默認佈局?
- 7. 更改Laravel的默認(根)控制器
- 8. 更改設計控制器的佈局
- 9. 如何更改Xcode中的默認加載視圖控制器?
- 10. 更改設計的默認佈局
- 11. 如何在yii2中設置默認控制器
- 12. 更改默認控制器actionresult
- 13. Yii 2.0更改默認控制器
- 14. 如何從mvc 5中的控制器更改佈局(主頁)?
- 15. 如何更改索引控制器的默認動作zend
- 16. 如何將視圖呈現給控制器的默認佈局中的元素?
- 17. 如何在Android Studio中更改默認模板佈局文件
- 18. 在Express/EJS中,如何更改默認佈局?
- 19. 如何覆蓋默認CSS上yii2在控制器
- 20. 如何從控制器訪問變量佈局/ main.php Yii2
- 21. 如何更改默認的mx:表單佈局?
- 22. Rails使用控制器的默認佈局
- 23. 更改默認佈局後的批量發佈更新
- 24. 如何更改默認視圖控制器在Xcode
- 25. Magento託管 - 更改搜索佈局/默認佈局
- 26. 如何更改Yii2中的默認模板?
- 27. 如何更改Visual Studio中的默認控制值?
- 28. 設計控制器如何更改佈局?
- 29. 如何更改佈局視圖控制器?
- 30. PHP - 鋰框架如何更改/切換默認佈局
如果我這樣做,我得到以下錯誤:處理另一個錯誤時發生錯誤: yii \ base \ UnknownPropertyException:設置未知屬性:yii \ web \ View ::佈局在C:\ ... \ yii \ vendor \ yiisoft \ yii2 \ base \ Component.php:197 – TheStoryCoder
是的,我錯了。我確定了我的答案。 –