前言:
剛到一個公司實習。給的第一個任務就會用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)時,我們對它的工作流程描述如下:
用戶請求此 URL
1
http://www.example.com/blog/index.php?r=site/contact
;
入口腳本 被網站服務器執行以處理此請求;
一個 應用 的實例被創建,其配置參數為
1
/wwwroot/blog/protected/config/main.php
應用配置文件中指定的初始值;
應用分派此請求到一個 控制器(Controller) 和一個 控制器動作(Controller action)。對於聯繫頁(Contact)的請求,它分派到了
1
site
控制器和
1
contact
動作 (即
1
/wwwroot/blog/protected/controllers/SiteController.php
中的
1
actionContact
方法);
應用按
1
SiteController
實例創建了
1
site
控制器並執行;
1
SiteController
實例通過調用它的
1
actionContact()
方法執行
1
contact
動作;
1
actionContact
方法為用戶渲染一個名為
1
contact
的 視圖(View) 。在程序內部,這是通過包含一個視圖文件
1
/wwwroot/blog/protected/views/site/contact.php
並將結果插入 佈局 文件
1
/wwwroot/blog/protected/views/layouts/column1.php
實現的。
總結:
數據庫配置在根目錄下/protected/config/database.php.在裡面配置即可
-
'mysql:host=localhost:3306;dbname=test', 'emulatePrepare' => true, 'username' => 'root', 'password' => 'root', 'charset' => 'utf8', 'tablePrefix' => 'backend_', 'enableParamLogging' => true // 顯示sql語句綁定的參數信息 );
gii的使用
Controller Generator 生成控制器
Crud Generator 生成增刪改差
一下類似
Form Generator 生成表單
Model Generator 生成數據庫模型
Module Generator 生成模塊
填寫
填寫
訪問www.example.com/index/php?r=gii 即可進入gii頁面。密碼應該是123456
在裡面有5個generator
公司後臺默認都是ajax+json傳遞數據。所以要在控制器中新增兩個方法
默認create.php中渲染後新增~
然後新建_form_create.php。在此之中新增ajax。
意義:與form一致。目的是為了兩個操作走不同的文件,從而方便管理~
$this->renderPartial('_form_create', array('model' => $model));
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); }
在其對應的視圖文件夾中也要修改
以下是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() 把所有的字符變成小寫
閱讀更多 派歌搞笑集錦 的文章