【发布时间】:2012-03-29 17:45:23
【问题描述】:
目前我正在 Zend 中做一个项目,我正在做的工作很完美,但我确信这不是我想做的方式,我的意思是我没有遵循 MVC,我想在我的 zend 应用程序中应用 MVC。 我正在粘贴一个简单模块的代码,该模块将描述我在做什么。请纠正我的错误。
我的控制器
class ContactsController extends Zend_Controller_Action{
public function contactsAction(){
if(!Zend_Auth::getInstance()->hasIdentity()){
$this->_redirect('login/login');
}
else{
$request = $this->getRequest();
$user = new Zend_Session_Namespace('user');
$phone_service_id = $user->p_id;
$instance = new Contacts();
$select = $instance->Get_Contacts($p_id);
$adapter = new Zend_Paginator_Adapter_DbSelect($select);
$paginator = new Zend_Paginator($adapter);
.
.
//more code
}
请注意我的控制器中的这 2 行
$instance = new Contacts();
$select = $instance->Get_Contacts($pid);
这是我在模型中的联系人类
class Contacts extends Zend_Db_Table{
function Get_Contacts($p_id){
$DB = Zend_Db_Table_Abstract::getDefaultAdapter();
$select = $DB->select()
->from('contact', array('contact_id','contact_first_name','contact_mobile_no','contact_home_no','contact_email','contact_office_no'))
->where('pid = ?', $p_id)
->order('date_created DESC');
return $select;
}
}
在此之后,我简单地将我的结果分配给我的视图。
请注意 由于它的工作,但我的班级中没有私有数据成员,我的班级不是蓝图。没有 SETTERS 和 GETTERS 。我怎样才能使我的代码最适合 MVC 和 OOP??
【问题讨论】:
-
您不接受已接受答案并接受另一个仅指向手册的答案的实际原因是什么?这与我在评论中提供的相同链接对我更彻底的解释:)
-
您是否知道
extends构成“IS A”关系。联系人不是数据库表。
标签: model-view-controller oop zend-framework