Yii 通過Gii實現CRUD與生成module

                            Yii 通過Gii實現CRUD與生成module

 

    開發工具:NetBeans IDE(使用Eclipse PHP Studio亦可) ,wampserver

     數據庫:mySQL

    相關完整參考工程鏈接:Yii實現用戶註冊登錄、ajax、圖片上傳、modules編程基礎例程(內置完整工程及使用說明)


   【1】創建和連接數據庫

    創建數據庫message,並修改 config/main.php 的db 信息

   

    建立user表

CREATE TABLE IF NOT EXISTS `user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(128) COLLATE utf8_unicode_ci NOT NULL,
  `password` varchar(128) COLLATE utf8_unicode_ci NOT NULL,
  `profile` text COLLATE utf8_unicode_ci,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=4 ;

   【2】設置Gii ,並設置登錄密碼(在 protected / config / main.php)

    

    【3】進入gii設置工程(在工程地址末端加 “ ?r=gii ” ),進入後輸入設置的密碼進行登錄

   

    【3-1】如果設置了僞靜態,進入gii的地址由原來的 localhost/system/index.php?r=gii 改爲 localhost/system/gii 或者是本地ip/system/gii

    (1)在config/main.php的components/urlManager中設置

'urlManager' => array(
            'urlFormat'=>'path',
            'urlSuffix'=>'.html',
            'showScriptName' => FALSE
)
    (2)需要在httpd.conf服務器中配置

      #LoadModule rewrite_module modules/mod_rewrite.so

    去除前面的#

      LoadModule rewrite_module modules/mod_rewrite.so

  (3)AllowOverride None 修改爲:AllowOverride All

      【3-2】輸入登錄gii地址,出現 “exception 'CDbException' with message 'CDbConnection.connectionStringcannot be empty.' in   ..\framework\db\CDbConnection.php:370 ”的錯誤解決方法

      錯誤顯示如下:

        

          出現問題的原因是在config/main.php中沒有設置'db',因此要在相應的地方設置數據庫連接

    【4】根據表的結構生成表的模型類

    

  

 點擊下圖的generate生成模型類User.php

 如果出現“The code has been generated successfully”表示文件生成成功

   【5】使用GII生成對錶user的CRUD操作類

  

   這樣,使用 GII 就能生成UserController 控制器、 User 模型 和 視圖文件


   【6】訪問生成的工程

  可以通過設置按鈕和路徑訪問

 

   最終可以訪問並能進行CRUD操作

  

   【7】在生成的模塊modules下使用Gii生成模型models和控制器controllers

     如在modules/shop下生成models

  

    進入gii後修改生成model的路徑Model Path到相應的模塊下即可

    訪問生成的modules下的模塊

    (地址要指向modules下的shop,即modules/shop/views/shop/index.php)

   

 

   *引用外部的js、css文件,可以參考網上其他的方法(在modules下對應的模塊新建assets文件夾,再進行配置),也可以直接在工程根目錄下新建存放js和css的文件夾,訪問更方便。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章