프론트 엔드 웹 사이트 (site
이라고 함), 관리 사이트 admin
및 웹 서비스 ws
이있는 공유 데이터 모델 (기본적으로 CerealStuff
)을 가진 Yii 프로젝트를 만들려고합니다. MVC 전체에 익숙하지 않으며 Yii/MVC 모범 사례와 일관성을 유지하기 위해이 프로젝트를 어떻게 디자인해야하는지 알고 싶었습니다. 지금까지이 두 가지 기본 옵션을 확인했다 :Yii MVC + Web Service = MVC가 아니십니까?
- 이 모델을 만들기 루트에
CerealStuff
, 세 가지 모듈을 만들을site
,admin
및ws
자신의 컨트롤러와 각; - 루트에서 모델
CerealStuff
을 만들고admin
및public
과public
을 만들고 컨트롤러를 포함하는 컨트롤러를 포함하고 사이트를 처리하고 @soap 선언을 처리하여 ws 항목을 처리합니다.
옵션 2는 재생 된 코딩 총량을 줄이지 만 매우 정직하게 느껴지지 않습니다. 또한 "사이트"(보기)조차 웹 서비스를 사용하여 데이터베이스에 액세스하는 현대 웹 응용 프로그램이 있어야 할 것 같은 기분이 듭니다.
의견을 보내주십시오.
이렇게하면 프런트 엔드 및 웹 서비스 컨트롤러에서 공유 기능을 변경하기 위해 두 곳에서 변경해야한다는 단점이 있습니다. 복잡한 출력 형식을 지정하는 컨트롤러가 있다고 가정 해보십시오. –
아닙니다. 스키니 컨트롤러에 대한 링크를 참조하십시오 - 논리가 모델에 적용됩니다. 컨트롤러가 복잡한 출력 형식을 지정해서는 안되며, 이것이 사용자의 관점입니다. –
알았어요 - 고마워요! –