저는 Zendframework로 첫 번째 응용 프로그램을 작성하고 있습니다. 제 질문은 MVC (Model-View-Controller) 아키텍처 패턴에 관한 것입니다.데이터 특정 검사를 수행 할 MVC 모델
현재 데이터베이스 테이블을 참조한 모델이 있습니다. 는 여기에 내가 현재 가지고있는 클래스이다 :
Model_Person
Model_PersonMapper
Model_DbTable_Person
지금, 나는 그물에 많은 예제를 참조하지만, 그들 모두 삽입/업데이트/삭제의 간단한 경우입니다. 내 경우 엔 사람이 존재하는지 확인해야만하고 그렇지 않은 경우 ID를 검색하고 ID를 가져와야합니다 (이드가 돌아 오는 저장 내용을 알고 있지만 정확하게 수행해야하는 것은 아닙니다. 및 예).
간단하지만 그 밖의 다른 모든 경우에 대해 데이터베이스 논리를 어디에 두어야하는지 알고 싶습니다. 어떤 다른 경우에는 다른 테이블이나 다른 테이블을 통한 검사가 필요할 수 있습니다.
Model_XXXXMapper의 모든 특정 기능을 현재 유효성 검사/처리하고자하는 작업과 관련이있는 특정 항목으로 추가해야합니까? 함수처럼 getIdOfThePersonByNameOrInsertIfNotExists() (물론 샘플 이름 !!!)
내 모델에 대한 액세스가 덜 구체적 인 컨트롤러를 사용하여 컨트롤러에 있어야합니까?
즉, 모든 데이터 구체화 기능을 넣거나 확인하려면 어떻게해야합니까?
Zend_Validate_Db_NoRecordExists와 그 자매에 관심이있을 수 있습니다. Zend_Form을 사용하는 경우 폼 요소에이 유효성 검사기를 추가 할 수 있습니다. Zend_Form을 사용하지 않는다면 서비스 레이어에서이 유효성 검사 클래스를 간단히 사용할 수 있습니다.{| } 거짓 공공 기능의 생성 가능한 ($ 데이터) { // true를 반환} – Sudheer
위 내 의견을 무시하십시오 간단한 서비스 클래스는 클래스 Service_Person_Validate 같은 것이 될 수 있습니다. 응답 상자에 그것을 입력하려고했습니다. – Sudheer