Lors de l'utilisation de tp3.3 pour le développement de projets, les codes ajoutés, supprimés, modifiés et vérifiés sont souvent les mêmes, en particulier la partie contr?leur. Cependant, le même code dans chaque contr?leur doit être réécrit.
J'ai réappris le design. modèles, ce type Quel type de modèle peut être utilisé pour réduire la quantité de duplication de code Il est préférable d'utiliser des modèles de conception
Par exemple, créez le système rbac?:
Il s'agit du code de base pour ajouter, supprimer, modifier et vérifier mon contr?leur administrateur. à l'exception des différentes classes de modèles créées par le constructeur, les structures de base d'ajout, de suppression, de modification et de vérification sont similaires. Comment puis-je réduire le code en double?? j'espère qu'un expert pourra me donner quelques conseils, merci.
protected $_model;
public function __construct(){
parent::__construct();
$this->_model=new MannagerModel();
}
/**
* 管理員添加
*/
public function addC(){
if(IS_POST){
$data=I('post.');
$res=$this->_model->Store($data);
$this->redirectUrl($res,'listC');
}
$this->display();
}
/**
* 管理員列表顯示
* @return [type] [description]
*/
public function listC(){
$data=$this->_model->lists();
$this->assign('lists',$data);
$this->display();
}
/**
* 管理員刪除
* @return [type] [description]
*/
public function delC(){
$id=intval(I('get.id'));
$res=$this->_model->del($id);
//跳轉(zhuǎn)判斷函數(shù)
$this->redirectUrl($res);
}
/**
* 管理員更新
* @return [type] [description]
*/
public function editC(){
$id=intval(I('get.id'));
//where的數(shù)組形式
$where['id']=$id;
// 顯示舊數(shù)據(jù)
$old=$this->_model->lists($where);
$this->assign('old',$old);
//存儲(chǔ)新的數(shù)據(jù)
if(IS_POST){
$data=I('post.');
$res=$this->_model->edit($id,$data);
$this->redirectUrl($res,'listC');
}
$this->display();
}
Soyons orientés objet. Pour les ajouts, suppressions, modifications et requêtes de base, écrivez une classe de base. Pour les classes spéciales, héritez simplement de la classe de base et remplacez-la
.