摘要:簡述是一個強大的代碼生成器,主要用于后臺代碼生成。下面列出由生成的文件,以便你研習(xí)功能和實現(xiàn),或修改它們控制器模型和視圖補充被設(shè)計成高度可定制和可擴展的代碼生成工具。使用生成代碼是一個基于界面的代碼生成工具。
簡述
Gii 是一個強大的代碼生成器,主要用于后臺代碼生成。
開始 GiiGii 是 Yii 中的一個模塊??梢酝ㄟ^配置應(yīng)用的 yiibaseApplication::modules 屬性開啟它。通常來講在 config/web.php 文件中會有以下配置代碼:
$config = [ ... ]; if (YII_ENV_DEV) { $config["bootstrap"][] = "gii"; $config["modules"]["gii"] = "yiigiiModule"; }
這段配置表明,如果當前是開發(fā)環(huán)境,應(yīng)用會包含 gii 模塊,模塊類是 yiigiiModule。
如果你檢查應(yīng)用的入口腳本 web/index.php,將看到這行代碼將 YII_ENV_DEV 設(shè)為 true:
defined("YII_ENV") or define("YII_ENV", "dev");
鑒于這行代碼的定義,應(yīng)用處于開發(fā)模式下,按照上面的配置會打開 Gii 模塊。你可以直接通過 URL 訪問 Gii:
http://hostname/index.php?r=gii
補充: 如果你通過本機以外的機器訪問 Gii,請求會被出于安全原因拒絕。你可以配置 Gii 為其添加允許訪問的 IP 地址:
"gii" => [ "class" => "yiigiiModule", "allowedIPs" => ["127.0.0.1", "::1", "192.168.0.*", "192.168.178.20"] // 按需調(diào)整這里 ],
想要覆寫已存在文件,選中 “overwrite” 下的復(fù)選框然后點擊 “Generator”。如果是新文件,只點擊 “Generator” 就好。
接下來你會看到一個包含已生成文件的說明頁面。如果生成過程中覆寫過文件,還會有一條信息說明代碼是重新生成覆蓋的。
生成 CRUD 代碼CRUD 代表增,查,改,刪操作,這是絕大多數(shù) Web 站點常用的數(shù)據(jù)處理方式。
選擇 Gii 中的 “CRUD Generator” (點擊 Gii 首頁的鏈接)去創(chuàng)建 CRUD 功能。例如:
Model Class: appmodelsCountry
Search Model Class: appmodelsCountrySearch
Controller Class: appcontrollersCountryController
然后點擊 “Preview” 按鈕。你會看到下述將要生成的文件列表。
如果你之前創(chuàng)建過 controllers/CountryController.php 和 views/country/index.php 文件,選中 “overwrite” 下的復(fù)選框覆寫它們(之前的文件沒能全部支持 CRUD)。
試運行用瀏覽器訪問下面的 URL 查看生成代碼的運行:
http://hostname/index.php?r=country/index
可以看到一個柵格顯示著從數(shù)據(jù)表中讀取的國家數(shù)據(jù)。支持在列頭對數(shù)據(jù)進行排序,輸入篩選條件進行篩選。
下面列出由 Gii 生成的文件,以便你研習(xí)功能和實現(xiàn),或修改它們:
控制器:controllers/CountryController.php
模型:models/Country.php 和 models/CountrySearch.php
視圖:views/country/*.php
補充:Gii 被設(shè)計成高度可定制和可擴展的代碼生成工具。使用它可以大幅提高應(yīng)用開發(fā)速度。
使用 Gii 生成代碼1、Gii 是一個基于 web 界面的代碼生成工具。
2、Model Generator 創(chuàng)建模型類代碼時,注意表名(Table Name)和模型類的對應(yīng)(Model Class);命名空間路徑(Namespace)的確認。
3、CURD Generator 生成代碼時,注意調(diào)用的模塊目錄所在路徑,在設(shè)置路徑時注意 Model 和 Search 的路徑,還有其他類路徑(Controller 和 View)的設(shè)置,避免出現(xiàn)路徑錯誤的問題。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/21612.html
摘要:認證事件類在登錄和注銷流程引發(fā)一些事件。成功注銷后引發(fā)。提供兩種授權(quán)方法存取控制過濾器和基于角色的存取控制。允許已認證用戶執(zhí)行操作。指定一個回調(diào)函數(shù)用于判定該規(guī)則是否滿足條件。 簡述 在程序開發(fā)過程中,往往都不能忽視安全問題,無論你的框架有多么完美,都會有破綻,所以完善自己的系統(tǒng),從程序開發(fā)的安全角度去思考問題,把一切潛在的危機扼殺在搖籃中。 認證(Authentication) 認證...
摘要:簡述模塊是中的架構(gòu)的板塊,主要負責(zé)數(shù)據(jù)的展示,渲染模板文件,展示數(shù)據(jù)內(nèi)容。此外在一個視圖中還可以引入多個視圖文件,也是通過方法實現(xiàn)。布局文件的數(shù)據(jù)默認以顯示,也可以用數(shù)據(jù)塊的形式渲染到視圖上。必須要確認生成一次,才會正式生成新首頁。 簡述 View模塊是Yii中的MVC架構(gòu)的V板塊,主要負責(zé)數(shù)據(jù)的展示,渲染模板文件,展示數(shù)據(jù)內(nèi)容。 基本概念 MVC在Yii里面有一個Views文件夾,里...
摘要:運行來安裝指定的擴展。這更便于用戶辨別是否是的擴展。當用戶運行安裝一個擴展時,文件會被自動更新使之包含新擴展的信息。上述代碼表明該擴展依賴于包。例如,上述的條目聲明將對應(yīng)于別名。為達到這個目的,你應(yīng)當在公開發(fā)布前做測試。 簡述 擴展是專門設(shè)計的在 Yii 應(yīng)用中隨時可拿來使用的, 并可重發(fā)布的軟件包。 基礎(chǔ) 例如, yiisoft/yii2-debug 擴展在你的應(yīng)用的每個頁面底部添加...
摘要:把所有的增量數(shù)據(jù)庫遷移提交到生產(chǎn)環(huán)境數(shù)據(jù)庫當中。如果其中任意一個遷移提交失敗了,那么這條命令將會退出并停止剩下的那些還未執(zhí)行的遷移。執(zhí)行這條命令期間不會有任何的遷移會被提交或還原。 簡述 數(shù)據(jù)遷移就是數(shù)據(jù)庫表在團隊建的遷移操作,達到團隊相互間的信息同步,數(shù)據(jù)統(tǒng)一。 數(shù)據(jù)庫遷移 一般步驟: 1、在 yii2 的 migrate 中,通常用來對數(shù)據(jù)庫數(shù)據(jù)表進行修改操作,主要對結(jié)構(gòu)和小部分數(shù)...
摘要:它由一個或多個類組成,它們在控制臺環(huán)境下通常被稱為命令。控制臺入口腳本通常被稱為,位于應(yīng)用程序的根目錄。選項通過覆蓋在中的方法,你可以指定可用于控制臺命令選項。參數(shù)將傳遞給請求的子命令對應(yīng)的操作方法。通常,執(zhí)行成功的命令會返回。 簡述 控制臺應(yīng)用程序的結(jié)構(gòu)非常類似于 Yii 的一個 Web 應(yīng)用程序,主要用于終端服務(wù)器執(zhí)行。 控制臺命令 控制臺應(yīng)用程序的結(jié)構(gòu)非常類似于 Yii 的一個 ...
閱讀 1625·2021-11-02 14:48
閱讀 3722·2019-08-30 15:56
閱讀 2792·2019-08-30 15:53
閱讀 3237·2019-08-30 14:09
閱讀 3136·2019-08-30 12:59
閱讀 2884·2019-08-29 18:38
閱讀 2727·2019-08-26 11:41
閱讀 2242·2019-08-23 16:45