溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何操作Yii 框架使用Gii生成代碼

發(fā)布時(shí)間:2021-03-08 15:33:10 來(lái)源:億速云 閱讀:188 作者:TREX 欄目:開(kāi)發(fā)技術(shù)

這篇文章主要講解了“如何操作Yii 框架使用Gii生成代碼”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“如何操作Yii 框架使用Gii生成代碼”吧!

開(kāi)始 Gii

Gii 是 Yii 中的一個(gè)模塊。 可以通過(guò)配置應(yīng)用的 modules 屬性開(kāi)啟它。通常來(lái)講在 config/web.php 文件中會(huì)有以下配置代碼:

$config = [ ... ];
 
if (YII_ENV_DEV) {
  $config['bootstrap'][] = 'gii';
  $config['modules']['gii'] = [
    'class' => 'yii\gii\Module',
  ];
}

這段配置表明,如果當(dāng)前是開(kāi)發(fā)環(huán)境, 應(yīng)用會(huì)包含 gii 模塊,模塊類(lèi)是 yii\gii\Module。

如果你檢查應(yīng)用的入口腳本 web/index.php, 將看到這行代碼將 YII_ENV_DEV 設(shè)為 true:

defined('YII_ENV') or define('YII_ENV', 'dev');

鑒于這行代碼的定義,應(yīng)用處于開(kāi)發(fā)模式下,按照上面的配置會(huì)打開(kāi) Gii 模塊。你可以直接通過(guò) URL 訪問(wèn) Gii:

http://hostname/index.php?r=gii

信息: 如果你通過(guò)本機(jī)以外的機(jī)器訪問(wèn) Gii,請(qǐng)求會(huì)被出于安全原因拒絕。 你可以配置 Gii 為其添加允許訪問(wèn)的 IP 地址:

'gii' => [
  'class' => 'yii\gii\Module',
  'allowedIPs' => ['127.0.0.1', '::1', '192.168.0.*', '192.168.178.20'] // 按需調(diào)整這里
],

生成活動(dòng)記錄類(lèi)

選擇 “Model Generator” (點(diǎn)擊 Gii 首頁(yè)的鏈接)去生成活動(dòng)記錄類(lèi)。并像這樣填寫(xiě)表單:

  • Table Name: country

  • Model Class: Country

然后點(diǎn)擊 “Preview” 按鈕。你會(huì)看到 models/Country.php 被列在將要生成的文件列表中??梢渣c(diǎn)擊文件名預(yù)覽內(nèi)容。

如果你已經(jīng)創(chuàng)建過(guò)同樣的文件,使用 Gii 會(huì)覆寫(xiě)它, 點(diǎn)擊文件名旁邊的 diff 能查看現(xiàn)有文件與將要 生成的文件的內(nèi)容區(qū)別。

想要覆寫(xiě)已存在文件,選中 “overwrite” 下的復(fù)選框然后點(diǎn)擊 “Generator”。如果是新文件,只點(diǎn)擊 “Generator” 就好。

接下來(lái)你會(huì)看到一個(gè)包含已生成文件的說(shuō)明頁(yè)面。如果生成過(guò)程中覆寫(xiě)過(guò)文件, 還會(huì)有一條信息說(shuō)明代碼是重新生成覆蓋的。

生成 CRUD 代碼

CRUD 代表增,查,改,刪操作,這是絕大多數(shù) Web 站點(diǎn)常用的數(shù)據(jù)處理方式。選擇 Gii 中的 “CRUD Generator” (點(diǎn)擊 Gii 首頁(yè)的鏈接)去創(chuàng)建 CRUD 功能。本例 “country” 中需要這樣填寫(xiě)表單:

  • Model Class: app\models\Country

  • Search Model Class: app\models\CountrySearch

  • Controller Class: app\controllers\CountryController

然后點(diǎn)擊 “Preview” 按鈕。你會(huì)看到下述將要生成的文件列表。

如何操作Yii 框架使用Gii生成代碼

如果你之前創(chuàng)建過(guò) controllers/CountryController.phpviews/country/index.php 文件(在指南的使用數(shù)據(jù)庫(kù)章節(jié)), 選中 “overwrite” 下的復(fù)選框覆寫(xiě)它們(之前的文件沒(méi)能全部支持 CRUD)。

試運(yùn)行 ¶

用瀏覽器訪問(wèn)下面的 URL 查看生成代碼的運(yùn)行:

http://hostname/index.php?r=country/index

可以看到一個(gè)柵格顯示著從數(shù)據(jù)表中讀取的國(guó)家數(shù)據(jù)。支持在列頭對(duì)數(shù)據(jù)進(jìn)行排序, 輸入篩選條件進(jìn)行篩選。

可以瀏覽詳情,編輯,或刪除柵格中的每個(gè)國(guó)家。 還可以點(diǎn)擊柵格上方的 “Create Country” 按鈕通過(guò)表單創(chuàng)建新國(guó)家。

如何操作Yii 框架使用Gii生成代碼

如何操作Yii 框架使用Gii生成代碼

感謝各位的閱讀,以上就是“如何操作Yii 框架使用Gii生成代碼”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)如何操作Yii 框架使用Gii生成代碼這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI