YII1.1.19初體驗

前言:

剛到一個公司實習。給的第一個任務就會用yii1.1.19開發後臺。照葫蘆畫瓢。總得寫點總結不是~~

先來幾個官網扒下來的安裝點~~

安裝Yii

首先,我們來安裝Yii框架。 從 www.yiiframework.com 獲取一份Yii的拷貝,解壓縮到

1

/wwwroot/yii

。再次檢查以確保

1

/wwwroot/yii/framework

目錄存在。

創建應用骨架

然後,我們使用

1

yiic

工具在

1

/wwwroot/blog

目錄下創建一個應用骨架。

1

yiic

工具是在Yii發佈包中提供的命令行工具。它可以用於創建代碼以減少某些重複的編碼工作。

打開一個命令行窗口,執行以下命令:

% /wwwroot/yii/framework/yiic webapp /wwwroot/blog Create a Web application under '/wwwroot/blog'? [Yes|No]y ...... 注意:php.exe必須在計算機環境變量中

虛擬主機設置

在apache24\conf\extra\httpd-vhosts.conf中添加

DocumentRoot "D:/ichenkun_webs/blog"

ErrorLog "D:/ichenkun_webs/logs/blog.log"

CustomLog "D:/ichenkun_webs/logs/blog.log" common

DirectoryIndex index.php index.html index.htm

Options Indexes FollowSymLinks

AllowOverride all

Require all granted

在apache24\conf\httpd.conf中添加Listen:1010

然後重啟服務器

域名訪問localhost:1010。

出現頁面頭為My Web Application即為成功!


應用的工作流程

為了幫你理解Yii是怎樣工作的,對於我們的程序骨架,當有人訪問它的聯繫頁(Contact)時,我們對它的工作流程描述如下:

  1. 用戶請求此 URL

    1

    http://www.example.com/blog/index.php?r=site/contact

  2. 入口腳本 被網站服務器執行以處理此請求;

  3. 一個 應用 的實例被創建,其配置參數為

    1

    /wwwroot/blog/protected/config/main.php

    應用配置文件中指定的初始值;

  4. 應用分派此請求到一個 控制器(Controller) 和一個 控制器動作(Controller action)。對於聯繫頁(Contact)的請求,它分派到了

    1

    site

    控制器和

    1

    contact

    動作 (即

    1

    /wwwroot/blog/protected/controllers/SiteController.php

    中的

    1

    actionContact

    方法);

  5. 應用按

    1

    SiteController

    實例創建了

    1

    site

    控制器並執行;

  6. 1

    SiteController

    實例通過調用它的

    1

    actionContact()

    方法執行

    1

    contact

    動作;

  7. 1

    actionContact

    方法為用戶渲染一個名為

    1

    contact

    的 視圖(View) 。在程序內部,這是通過包含一個視圖文件

    1

    /wwwroot/blog/protected/views/site/contact.php

    並將結果插入 佈局 文件

    1

    /wwwroot/blog/protected/views/layouts/column1.php

    實現的。


總結:

  1. 數據庫配置在根目錄下/protected/config/database.php.在裡面配置即可

  1. 'mysql:host=localhost:3306;dbname=test', 'emulatePrepare' => true, 'username' => 'root', 'password' => 'root', 'charset' => 'utf8', 'tablePrefix' => 'backend_', 'enableParamLogging' => true // 顯示sql語句綁定的參數信息 );

  1. gii的使用

  1. Controller Generator 生成控制器

  2. Crud Generator 生成增刪改差

  3. 一下類似

  4. Form Generator 生成表單

  1. Model Generator 生成數據庫模型

  2. Module Generator 生成模塊

YII1.1.19初體驗

  1. 填寫

YII1.1.19初體驗

  1. 填寫

  2. 訪問www.example.com/index/php?r=gii 即可進入gii頁面。密碼應該是123456

  1. 在裡面有5個generator

  1. 公司後臺默認都是ajax+json傳遞數據。所以要在控制器中新增兩個方法

  1. 默認create.php中渲染後新增~

  2. 然後新建_form_create.php。在此之中新增ajax。

  3. 意義:與form一致。目的是為了兩個操作走不同的文件,從而方便管理~

  4. $this->renderPartial('_form_create', array('model' => $model));

  5. public function actionInsertModel() { $model = new BackendParameter(); $model->attributes = $_POST ['BackendParameter']; $model->create_time = time(); $model->update_time = time(); $model->save(false); $data = array( 'status' => array( 'desc' => '添加成功', 'code' => 'success' ) ); echo json_encode($data); } public function actionUpdateModel() { $model = BackendParameter::model()->findByPk($_POST ['BackendParameter']['id']); $model->code = $_POST ['BackendParameter']['code']; $model->name = $_POST ['BackendParameter']['name']; $model->value = $_POST ['BackendParameter']['value']; $model->remark = $_POST ['BackendParameter']['remark']; $model->update_time = time(); $model->save(false); $data = array( 'status' => array( 'desc' => '修改成功', 'code' => 'success' ) ); echo json_encode($data); }

  6. 在其對應的視圖文件夾中也要修改


以下是yii的筆記部分~~~

  • yiic的用法

  • 進入到yii的目錄下,cd framework

  • 在命令行中輸入 yiic webapp /www/blog

  • 數據庫的配置

  • 在protected/config/database.php

  • 'connectionString' => 'mysql:host=139.199.1.50:3306;dbname=yii_study',

    'emulatePrepare' => true,

    'username' => 'root',

    'password' => '123456',

    'charset' => 'utf8',

    'tablePrefix' => 'tbl_',

  • gii的安裝

  • 在mian.php中新增代碼

  • 'modules' => array(

    'gii' => array(

    'class' => 'system.gii.GiiModule',

    'password' => 'gii密碼'

    )

    ),

  • gii的使用見上面的內容

  • 可以在

    1

    Table Name

    欄中輸入一個星號 '*' 。這樣就可以通過一次點擊就對 所有的 數據表生成相應的模型類。

  • 用戶驗證在protected/conponents/UserIdentity.php中。

  • strtolower() 把所有的字符變成小寫


分享到:


相關文章: