布局檔案:
views/layouts/main.php 主要包括頁面顯示的頭部(導航欄),尾部(footer)
一、自定義布局檔案的使用:
① 在controller的action中新增:
$this->layout = '指定的布局檔案';//不需要加php字尾名
不同的action可以指定各自的布局檔案。
② 讓所有的action使用同乙個布局檔案:
在controller中直接新增屬性:
public $layout = '統一的布局檔案』;//不需要加php字尾名
或 在controller初始化方法中定義:
public
function
init
()
③ 不定義,則使用預設布局檔案:
查詢順序如下:
先檢視當前controller中是否定義布局變數;
如果有就直接使用,否則會查詢其所在module模型中定義的布局變數;
如果還沒有,會查詢改module的父類module中定義的布局變數;
④ layout變數的空值:
a. false,不使用布局檔案;
b. null,使用當前module模組中的布局檔案;
注意,布局檔案可以層層巢狀,比如當前有個test.php的布局檔案
裡面寫法是:
<?php
......div>
<?php
echo
$content
?>
<?php
$this->endcontent(); ?>
二、布局的更高階用法:
yii2預設只能在布局檔案中接收乙個名稱為$content的變數,這個變數是render指定的view檔案產生的;
現在可以通過在view檔案中寫以下**傳遞多個變數給布局檔案渲染:
<?php
$this->blocks['content'] = '';
$this->blocks['other'] = '';
?>
<?php
$this->beginblock('contetn');?>
這裡是指定的content需要傳遞的變數
<?php
$this->endblock(); ?>
<?php
$this->beginblock('other');?>
這裡是額外要在布局檔案中渲染的東西
<?php
$this->endblock(); ?>
<?php inhritlayout::end(); ?>
最後在布局檔案中,獲取。
詳細參考:
深入理解Yii2 資料庫事務
事務 transaction 在yii中,使用 yii db transaction 來表示資料庫事務。一般情況下,我們從資料庫連線啟用事務,通常採用如下的形式 transaction connection begintransaction try catch exception e else ca...
Yii2基礎筆記(一) Yii2預設模板入門使用
0.yii2的工作原理1.進行使用者註冊 或 登入的實現過程,要注意 定義 場景 及 場景的使用。登入場景 只要 使用者名稱和密碼,註冊場景 可能要 使用者名稱 密碼 郵箱 手機等等 yii2中登入相關的類的繼承關係是 2.除錯 可以採用 var dump this errors 來檢視錯誤資訊 3...
Yii2實用基礎學習筆記 四 模型驗證
自 常用驗證規則 1.safe 不驗證規則 字段 safe 欄位1 欄位2 safe 2.required 不能為空,必須驗證 字段 required message 提示資訊 欄位1 欄位2 required message 提示資訊 3.compare 對比驗證 字段 compare compa...