国产欧美二区三区-国产欧美高清-国产欧美国产精品第二区-国产欧美国产精品第一区-小说区 图片区-小说区 综合区 都市激情

當前位置: 首頁 > 站長資訊 > 正文頁面

DedeCMSV5.7模塊MVC框架分析

本文較為詳細的分析了DedeCMSV5.7模塊MVC框架結構。分享給大家供大家參考。具體分析如下:BfI網站目錄_網站網址收錄與提交入口

織夢MVC開發框架是一個精簡、迷你的web開發框架,用這個開發框架可以編寫基于織夢內容管理系統的擴展功能、模塊(插 件),甚至可以將其分離出來開發博客、BBS、SNS等.BfI網站目錄_網站網址收錄與提交入口

目錄結構說明:BfI網站目錄_網站網址收錄與提交入口

|_appBfI網站目錄_網站網址收錄與提交入口

|___control 控 制器(C)BfI網站目錄_網站網址收錄與提交入口

|___model 模型(M)BfI網站目錄_網站網址收錄與提交入口

|___templates 視圖模板(V)BfI網站目錄_網站網址收錄與提交入口

|___libraries 類 庫BfI網站目錄_網站網址收錄與提交入口

|___data 配置BfI網站目錄_網站網址收錄與提交入口

|___data/helper 小助手BfI網站目錄_網站網址收錄與提交入口

|___static 樣式,js,圖片文件夾BfI網站目錄_網站網址收錄與提交入口

|___index.php 統一入口文件BfI網站目錄_網站網址收錄與提交入口

統一入口解析地址:http://你的 網址/app/index.php?ct=index&ac=savect=index:控制器入口,對應到目錄control中的 index.phpBfI網站目錄_網站網址收錄與提交入口

如果RunApp()指定了第三個參數,例如問答中RunApp($ct, $ac , 'admin'),說明ct=index:控制器入口,對應到目錄control/admin中的index.phpBfI網站目錄_網站網址收錄與提交入口

ac=save:操作,對應 文件index.php中的class index中function ac_save()BfI網站目錄_網站網址收錄與提交入口

控制器中將相關功能操作都存放至一個文件中,例如留言 板,可以使用:BfI網站目錄_網站網址收錄與提交入口

?ct=guestbook&ac={do}統一完成,這樣也便于靜態化部署.BfI網站目錄_網站網址收錄與提交入口

1.控制器開發說明 (control):BfI網站目錄_網站網址收錄與提交入口

基本代碼結構:BfI網站目錄_網站網址收錄與提交入口

class yourctname extends ControlBfI網站目錄_網站網址收錄與提交入口

{BfI網站目錄_網站網址收錄與提交入口

public function ac_save()BfI網站目錄_網站網址收錄與提交入口

{BfI網站目錄_網站網址收錄與提交入口

}BfI網站目錄_網站網址收錄與提交入口

}BfI網站目錄_網站網址收錄與提交入口

控制器可以選擇繼承一 個基類:Control,這個類對應的文件名是/include/control.class.php,這里面含有基類的相關操作說明,這里有幾個常用方 法:BfI網站目錄_網站網址收錄與提交入口

$control->Model();BfI網站目錄_網站網址收錄與提交入口

載入一個模型。例如問答模塊中index.php中的 $this->question = $this->Model('mquestion'),就是在載入了mquestion這個模型。然后我們就可以通 過$this->question來調用模型相應操作。實現數據的插入,更新等等操作。調用類的名字可以隨便定義,但要保證沒有沖突。模型的文件放 在model目錄中。BfI網站目錄_網站網址收錄與提交入口

$control->Libraries();BfI網站目錄_網站網址收錄與提交入口

載入一個類。有時開發我們需要一個系統 中不存在的類時,我們可以通過這個方法來載入一個自己的類。具體的方法和模型一樣。類放在libraries目錄中。BfI網站目錄_網站網址收錄與提交入口

$control->helper();BfI網站目錄_網站網址收錄與提交入口

載入一個小助手,引入小助手是為了更好的幫助我們存放和管理需要用到的Function,具體的方法和模型一樣,小助手放在 data/helper目錄中.BfI網站目錄_網站網址收錄與提交入口

$control->SetTemplate();BfI網站目錄_網站網址收錄與提交入口

$control->SetTemplet(); // 設定當前操作需要指定的模板;BfI網站目錄_網站網址收錄與提交入口

//phpfensi.comBfI網站目錄_網站網址收錄與提交入口

$control->SetVar($k, $v); // 設定模板需要解析的變量,在模板中使用{dede:var.name /}進行調用.BfI網站目錄_網站網址收錄與提交入口

GLOBALS['k'] = $k;BfI網站目錄_網站網址收錄與提交入口

設定模板需要的變量,在模板中可以直接用方式輸出,問答模塊基本上都是采用這樣的方式輸出,這種方式比較適合處理一些復雜的數據,例如數組.BfI網站目錄_網站網址收錄與提交入口

$control->GetVar($k); // 獲取設定的模板變量BfI網站目錄_網站網址收錄與提交入口

$control->Display(); // 顯示模板解析后的內容BfI網站目錄_網站網址收錄與提交入口

$control->SaveTo(); // 將內容保存到文件BfI網站目錄_網站網址收錄與提交入口

控制器中關于模板的使用操作可以參看DedeTemplate模板引擎,具體可以參看公司內部開發文檔中模板說明相關 章節.BfI網站目錄_網站網址收錄與提交入口

模型開發說明(Model):BfI網站目錄_網站網址收錄與提交入口

class mtype extends ModelBfI網站目錄_網站網址收錄與提交入口

{BfI網站目錄_網站網址收錄與提交入口

public function get_one()BfI網站目錄_網站網址收錄與提交入口

{BfI網站目錄_網站網址收錄與提交入口

}BfI網站目錄_網站網址收錄與提交入口

}BfI網站目錄_網站網址收錄與提交入口

控制器可以選擇繼承一個基類:Model,這個類對應的文件名是/include/model.class.php,這里面 含有數據庫類的相關操作說明,這里只有一個方法:BfI網站目錄_網站網址收錄與提交入口

$model->dsql();BfI網站目錄_網站網址收錄與提交入口

實例化數據庫操作類,模型中關于數據庫類的使用操作可以參看數據庫類使用說明BfI網站目錄_網站網址收錄與提交入口

模板標簽調用說明:BfI網站目錄_網站網址收錄與提交入口

如果在控制器中通過$control->SetVar($k, $v); 這種方式設定的參數,我們通過標簽 {dede:var.name /}的方式進行調用.BfI網站目錄_網站網址收錄與提交入口

如果在控制器中通過GLOBALS['k'] = $k;這種方式設定的參數,我們通過標簽 {dede:global.name/}的方式進行調用或者直接采用php的方式進行輸出.BfI網站目錄_網站網址收錄與提交入口

希望本文所述對大家的dedecms二次開發有所幫助。BfI網站目錄_網站網址收錄與提交入口

  

此文由 網站目錄_網站網址收錄與提交入口 編輯,未經允許不得轉載?。?!--首頁 > 站長文章 > 織夢cms » DedeCMSV5.7模塊MVC框架分析-->

相關文章