CakePHP之Model函數定義

在CakePHP中,MVC的架構是清晰的,而在實際做項目中,我發現仍然有很多人喜歡在Controller中堆砌函數,這樣做也未嘗不可,但是,作爲一個百萬行級的大項目來說,這種違背MVC思想的做法雖然可能暫時給程序結構帶來便利,但從長遠來看,是萬萬不可取的!

我們應該將系統常用到的某些函數定義在Model中,特別是純粹的的數據處理函數和數據查詢函數:

譬如,在Blog中像下面這樣的條件查詢:

	/*
*
* Blog 根據條件得到相應字段結果集
*
* @Param array conditions
* array fields
* @Return array
*
*/
function getBlogsByCon($conditions = array(),$fields = null){
return $this->find('all',array(
'conditions'=>ife(count($conditions) > 0, am(array('`Blog`.`status` = 1'),$conditions), array('`Blog`.`status` = 1')),
'fields'=>$fields,
'order'=>'`Blog`.`created` DESC',
'page'=>1,
'recursive'=>0));
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章