MVC 모델(CakePHP)의 기초 지식 정리
CakePHP 기반으로 조사한 것
MVC 모델 정보
프로그램의 내용(처리)을 기능별로 나누어 기술함으로써 프로그램을 정리하기 쉽게 하는 사고방식
1. 브라우저에서 컨트롤러와 액션을 지정하고 액션을 실행합니다.
2. 액션 내에서 모델이 지정되면 모델이 실행됩니다.
3. 액션 처리가 끝나면 Template 폴더\컨트롤러와 같은 이름의 폴더\액션 이름과 같은 이름의 ctp 파일을 표시 대상으로 생성합니다.
4. 브라우저로 돌아갑니다.
( htps : // 코 m / 츠유리 104 / ms / 72797 4c8b3 79149 )
각 역할에 대해
모델
비즈니스 로직 1 담당
Controller에서 DB 관련 작업을 받고 처리하는 사람
( htps : // 괜찮은 dbg. 이 m / u t_mvc도 l )
■ 폴더 구성
Model
|-Entity(Table内のソースを動かす)
|-Table(CRUD処理や入力チェックを実装する)
|-Validation(カスタマイズしたかったらここにいれる。自分で作る)
보기
실제로 입력이나 설정을 하는 화면을 표시
컨트롤러에서 전달된 DB 데이터를 HTML로 표시하거나
확장자가 ".ctp"이지만 내용은 HTML with PHP
→ 보통 HTML 파일로 편집하면 OK
■ 폴더 구성
폴더 이름 주의(다른 용도로 View 폴더가 있음)
Template
|-Element(HTMLファイルをパーツごとに書き出すことができる)
|-Error(エラーの時に表示する画面)
|-Layout(全画面共通で表示したいことを設定するdefault.ctp)
(他省略)
컨트롤러
View에서 요청을 받고 Model로 메시지로 변환
그리고 응답으로 처리 후 화면을 View로 반환
보통 PHP를 쓰는 곳
명명 규칙
파일명이나 소스내의 취급도 포함
모델 이름
【Table】
(예) UsersTable.php
·
DB名
+ Table
.php 2・선두와 Table의 "T"는 대문자
・파일내의 클래스명은 파일명과 같이
DB名+Table
하지만, Controller로 Table를 부를 때는 DB명만→
TableRegistry::get('Users');
・Table내의 메소드는 카멜식 🐪【Entity】
(예) User.php
・
DB名
.php(단수형)· 대문자 시작
【Validation】
규정은 특별히 없음
View의 이름
(예) index.ctp
· 소문자 시작
· Template 부하의 명명 규칙은 동일
・대상 Controller.php의 액션명 3 과 같은 것을 가리킨다 ↓
UserController.php
class UserController extends Controller
{
public function index() {
・・・・・・
}
private function showList() {
・・・・・・
}
}
이 경우
src/Template/User/
4·
index.ctp
・ show_list.ctp
(여기에서는 스네이크식 🐍가 된다)필요하다
※
private
의 액션이었을 경우는 파일 없음→ 브라우저에서 요청했을 때의 조치 만 필요하기 때문에
(원래
private
그렇다면 클래스 밖에서 액세스할 수 없다)컨트롤러 이름
(예) UserController.php
・
コントローラ名
+ Controller
.php· 선두와 Controller의 "C"는 대문자
・액션명은 카멜식🐫
참고
처리 된 결과를 데이터베이스에 반영하십시오. ↩
DB 이름 자체, 기본은 복수형이지만 단수형에서도 동작한다 ↩
~Controller.php 내의 메소드 (아마도) ↩
템플릿/사용자 폴더 : 컨트롤러 당 폴더가 필요합니다 ↩
Reference
이 문제에 관하여(MVC 모델(CakePHP)의 기초 지식 정리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/nanatsu/items/d0db5c64b916d03a18e6텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)