MVC 구조에서 OOP을 사용하여 학습하는 동안 가능한 한 우수 사례를 따르려고 노력하고 있습니다. 그래서 저는 여러분에게 MVC 구조에 대한 약간의 조언을 드리겠습니다. 여기 나를 조금 귀찮게한다.회원 관리자에 대한 OOP + MVC 조언
필자는 작성해야 할 여러 가지 양식 (주로 자체 데이터)을 작성하는 사이트를 작성 중이므로 구성원과 관련된 모든 양식이있는 구성원 컨트롤러를 설정하기로 결정했습니다 개별적인 방법으로 표현됩니다. 여기에는 로그인/로그 아웃 방법과 프로필 데이터 편집 등이 포함됩니다.이 방법 외에도 회원이 로그인되어있는 동안 사이트의 모든 페이지에서 상수 인 회원의 제어판 위젯을 생성 할 수있는 방법이 있습니다. 유일한 것은,이 컨트롤러의 다른 모든 메서드는 모두 동일한 종속성과 양식 템플릿을 가지고 있으므로 생성자에서이 모든 것을 생성하는 것이 좋겠지 만 control_panel 메서드는 동일한 종속성 등이 없으므로 이 목적을 위해 생성자를 사용할 수 없으며 대신 각 메소드에서 종속성과 동일한 템플릿 조각을 다시 선언해야합니다. 이것은 분명히 이상적이지 않고 DRY 원리를 따르지 않지만, 나는 그것이 control_panel 메소드로 무엇을해야하는지 궁금합니다. 멤버와 관련되어 있기 때문에 컨트롤러의 첫 번째 장소에 넣었습니다.
저는 여기에있는 것들을 너무 복잡하게하고 있습니다. 그냥 control_panel 메서드를 간단한 도우미 클래스로 옮기는 것이 합리적입니까? - 예를 들어, 당신이 다루는 Registration_Controller을 가질 수
내가 할 것이 무엇class Member_Controller extends Website_Controller {
public function __construct()
{
parent::__construct();
if (request::is_ajax())
{
$this->auto_render = FALSE; // disable auto render
}
}
public static function control_panel()
{
//load control panel view
$panel = new View('user/control_panel');
return $panel;
}
public function login()
{
}
public function register()
{
}
public function profile()
{
}
public function household()
{
}
public function edit_profile()
{
}
public function logout()
{
}
}