ThinkPHP中的模型
1、為什麼要建立資料對象
案例:使用ThinkPHP完成部門管理
① 設計資料庫
② 建立Dept控制器
路徑:./Application/Admin/Controller建立控制器
規則:DeptController.class.php
編程程式三步走
③ 複製add.html模板到./Application/Admin/View/Dept檔案夾,更改模板路徑
④ 更改View/Index/index.html左側導航
⑤ 擷取添加功能的上層業務(使用模型)
路徑:./Application/Admin/Model/DeptModel.class.php
編程模型代碼三步走:
在控制器中執行個體化模型,完成載入上層業務功能。
1)執行個體化模型
2)調用select方法
3)分配變數到模板檔案
在模板檔案add.html中,顯示上層業務列表
⑥ 實現資料的添加功能addOk
在模板頁面中,編程Javascript代碼,提交表單資料
定義表單提交頁面
在控制器中定義addOk方法實現添加操作
要用到的知識點:I方法,主要功能:接收表單資料,安全性更高
2、資料對象的建立方式
⑦ 引入create方法建立資料對象
以上addOk雖然可以正常添加資料到資料庫,但是對於表單的接收和處理過於冗餘,我們在ThinkPHP中可以使用create方法對其進行簡化操作。
3、create方法分析
使用Zend軟體追蹤create方法,如所示:
當資料處理完成後,會將接收的表單資料賦值給當前對象
問題:為什麼add方法不添加任何參數也可以添加成功呢?
答:繼續分析add方法,代碼如下:
如果add方法中沒有任何參數,系統會自動讀取$this->data這個屬性,又由於剛才create方法在處理完成後,會將表單資料存放於$this->data屬性中,所以系統會自動將表單資料添加到資料表中。
4、完成部門列表功能
① 在控制器中定義index方法,如所示:
② 複製index.html模板到./Application/Admin/View/Dept檔案夾下並更改路徑
以上就介紹了ThinkPHP中的模型二,包括了thinkphp方面的內容,希望對PHP教程有興趣的朋友有所協助。