Yii2基礎筆記(四) 深入理解布局檔案

2021-07-07 01:58:28 字數 1492 閱讀 8891

布局檔案:

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...