yii框架的gii在我看來算是個快速創建器,當然對于學習來說意義不大,但對于已經懂得它的原理并用它開發的話,就是個快速開發的好工具。所以作為一個gii主要開發工具,還是用的很多的。
使用 Gii? ? ?(推薦學習:yii教程)
Gii 是以模塊的方式實現的,它必須在一個已存在的 Yii 應用程序中使用。要使用 Gii,我們首先更改應用程序的配置如下:
return?array( ????......????'modules'=>array( ????????'gii'=>array( ????????????'class'=>'system.gii.GiiModule',????????????'password'=>'在這里填寫密碼',????????????//?'ipFilters'=>array(...IP?列表...), ????????????//?'newFileMode'=>0666, ????????????//?'newDirMode'=>0777, ????????),????),);
在上面,我們聲明了一個名為?gii?的模塊,它的類是?GiiModule。我們也為這個模塊設置了一個密碼,我們訪問 Gii 時會有一個輸入框要求填寫這個密碼。
出于安全考慮,默認情況下只允許本機訪問 Gii。若允許其他可信賴的機器訪問它,我們需要如上所示配置GiiModule::ipFilters?屬性。
因為 Gii 會生成并保存新文件到應用程序中,我們需要確保 Web 服務器進程有權限這樣做。上面的GiiModule::newFileMode?和?GiiModule::newDirMode?屬性控制如何生成新文件和新目錄。
現在可以通過 URL?http://hostname/path/to/index.php?r=gii?訪問 Gii 了。這里我們假設http://hostname/path/to/index.php?是訪問 Yii 應用程序的 URL。
若 Yii 應用程序使用 path 格式的 URL (查看 URL management),我們可以通過 URLhttp://hostname/path/to/index.php/gii 訪問 Gii。 我們可能需要增加如下 URL 規則到已有的 URL 規則的前面:
'components'=>array( ????...... ????'urlManager'=>array( ????????'urlFormat'=>'path', ????????'rules'=>array( ????????????'gii'=>'gii', ????????????'gii/<controller:>'=>'gii/<controller>', ????????????'gii/<controller:>/<action:>'=>'gii/<controller>/<action>', ????????????...已有的規則... ????????), ????), )</action></controller></action:></controller:></controller></controller:>
Gii 有一些默認的代碼生成器。每個代碼生成器負責生成特定類型的代碼。例如 controller 生成器生成一個 controller 類以及一些 action view 腳本; model 生成器為指定的數據表生成一個 ActiveRecord 類。
使用一個生成器的基本流程如下:
進入生成器頁面;
填寫指定代碼生成參數的輸入框。例如,使用 Module Generator 創建一個新模塊,你需要指定 module ID;
點擊 Preview 按鈕預覽即將生成的代碼。你將看到一個表格中列出了將要生成的文件列表。你可以點擊其中任何一個文件來預覽代碼;
點擊 Generate 按鈕生成這些代碼文件;
查看代碼生成日志。