zentaoPHP學習

這是其中一個faq module在module目錄下,
其中model.php是數據庫dao層的數據操作,control.php是控制層代碼,config.php是本模塊中的一些局部配置。lang是做國際化的。
view是頁面視圖層。
幾個重要的約束:
1.模塊內部的調用不需要引用
$this->faq->method()表示調用model中的方法
$this->view->args表示填充view中的參數,即想view頁面傳值
$this->config->args表示獲取config中的配置
$lang->faq->args表示獲取lang中的值(國際化)
2.control.php中的action方法必須與view中的文件命名有關聯如:
control中的某action方法:create
其對應view中的create.html.php,命名規則必須是這樣。只有這樣create方法中的參數才能傳遞到create.html.php頁面
3.js和css規則
命名必須與view中的關聯才能找到對應的js函數及css樣式,這就是爲什麼不需要引用文件。
4.對於post表單提交,需要在action中做如下處理:
if(!empty($_POST))
       {
           $this->faq->create($productID, $this->post->category);
           if(dao::isError()) die(js::error(dao::getError()));
           die(js::locate($this->inLink('manage', "productID=$productID&categoryID=$categoryID"), 'parent'));

       }
這裏的create被調用兩次,點擊添加按鈕,即跳轉到create,點擊提交跳轉到create的post中並轉向manager頁面。
5.zentaoPHP框架是單一入口的,一般所有url都是已index.php後加參數訪問,如訪問faq模塊的create方法,url:index.php?m=faq&f=create&id=2
每一次請求都要經過index.php並加載所有框架模塊以及配置參數等,最後通過$app->loadModule();將請求根據url分配下去。


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