2009-05-10 6 views
2

젠드 프레임 워크를 사용하여 프로젝트를 진행하고 있으며 데이터베이스에서 데이터를 가져 오는 올바른 방법에 대한 조언이 필요합니다.젠드 프레임 워크 : 데이터베이스에서 데이터를 검색하는 올바른 방법

템플릿을로드하기 위해 Zend_Layout을 사용하고 있습니다. 그런 다음 적절한보기가 템플리트에로드됩니다.

템플릿에는 데이터베이스의 데이터 (예 : 카테고리)를 표시하는 섹션이 있어야합니다. 하나의 템플릿을 사용하기 때문에 컨트롤러 또는 작업 호출과 관계없이 요청 된 모든 페이지에 데이터가 표시됩니다.

템플릿에서 데이터를 가져 오는 것이 좋지 않으며 실행 된 각 동작에서 데이터를 가져 오는 것이 좋지 않을 것입니다. 데이터베이스에서 데이터를 가져 오기 위해 헬퍼를 사용하는 것이 올바른지는 모르겠지만 MVC에 대한 전반적인 생각에 어긋나지는 않을 것입니다.

답변

1

모델 클래스를 사용하여 데이터를 가져 오는 옵션에 대해서는 언급하지 않았습니다. 이것이 MVC의 "M"입니다. :-)

모델 클래스는 뷰가 특정 데이터 조각을 요청할 때 사용할 수있는 인터페이스가있는 클래스입니다. Model 클래스에서는 Zend_Db_Table 메서드와 사용자 지정 SQL 쿼리 (Zend_Db_Adapterquery() 메서드를 통해 직접 실행 됨)를 혼합하여 사용할 수 있습니다. 무엇이든간에 데이터를 가져와야합니다.

요점은 모델이 View에서 사용할 수있는 형식으로 데이터를 제공하는 데 필요한 모든 로직을 캡슐화한다는 것입니다.

는 마이크로 소프트 또한

+0

대단히 감사합니다. 실제로 데이터베이스에서 데이터를 가져 오라고 말했을 때, 나는 Model 클래스를 통해 의미했습니다. 그래서 나는 템플릿에서 직접 적절한 Model 클래스를 호출하는 것이 좋다고 말하고있다. –

+0

예. 내 경험에 비추어 볼 때 뷰가 모델을 효과적으로 '읽기 전용'으로 처리하는 한 View는 Model 클래스의 메서드를 호출 할 수 있다는 것입니다. 모델이 이미 데이터베이스에서 가져온 데이터를 가지고 있는지 또는 뷰가 정보를 요청할 때 SQL 쿼리를 실행해야하는지는 구현 세부 사항입니다. 뷰는이를 기반으로 필요한 데이터를 요청하지 않아야합니다. –