
Chapter 6 URL 생성과 Controller Action
이번 장에선 URL 생성과 Controller Action 클래스를 만들어 보겠습니다. Controller Action 클래스란 MVC(Model–View–Controller) 패턴의 Controller 클래스의 행위 즉 Action을 정의한 클래스입니다. 보다 쉽게 말하면 MVC 패턴의 Controller의 역할을 하는 클래스입니다.

6.1 ‘Hellow magento 2’ 출력 모듈 만들기
웹 브라우저에 http://dev.magento.com/chapter06/examples/hellow 을 입력 시 ‘Hellow magento 2’를 출력해 주는 모듈을 만들어 보겠습니다.
Step 1 모듈 만들기
1. 디렉터리 만들기
2. etc/module.xml 생성하기
File: app/code/Example/ModuleCreate/registration.php
3. registration.php 생성하기
File: app/code/Example/RoutingAndController/registration.php
4. 모듈 등록
<router id > : Magento에서 사용될 라우터 클래스를 지정한다. 프런트엔드의 라우팅 시 에는 standard를 관리자 페이지 라우팅 시는 admin을 사용한다.
<route frontName >: URL의 첫 번째 세그먼트를 지정한다. 관습적으로 <router id>와 동일한 값을 사용한다.
<route id >:경로 고유 ID
<module name>: 라우팅 설정이 적용될 모듈명
Note: Magento 라우터 클래스란?
사용자의 요청이 들어왔을 때 해당 요청을 처리해할 Action 클래스를 찾는 역할을 담당합니다.
Step 3 Controller Action Class 만들기
Magento 모듈 개발 시 Controller 명이란 app/code/{벤더명}/{모둘명}/Controller 폴더의 하위에 존재하는 디렉터리 명을 말합니다. 해당 디렉터리엔 Controller의 행위를 정의한 Action Class가 존재합니다. ‘Hellow magento 2’를 출력할 Action Class를 생성합니다.
File: app/code/Example/RoutingAndController/Controller/Examples/Hellow.php
#1 Magento에서 프런트 앤드 영역의 Controller의 Action 클래스를 작성 시에는 항상 \Magento\Framework\App\Action\Action을 상속받아야 한다
#2 Controller의 Action의 로직은 execute() 메서드에 작성을 하여야 한다

Step 4 Code compiler
Magento에서는 코드 컴파일 이란 기능이 있습니다. 코드 컴파일은 팩토리, 프록시, 종속성 주입, 인터셉터 생성 등의 Magento에서 필요한 코드를 generated 폴더에 생성하는 작업을 말합니다. 운영 모드가 developer 모드일 경우 자동 생성된다고 하나 코딩 시 클래스 생성, 의존성 주입, di.xml의 변경 작업 후에는 코드 컴파일 작업을 진행 하는 게 좋습니다.
브라우저로 http://dev.magento.com/chapter06/examples/hellow
에 접근해 'Hellow magento 2’가 노출되는지 확인해보세요
다음 장에선 프런트 앤드의 URL 형식및 리다이렉트, 포워딩 좀더 자세히 컨트롤러를 다뤄보겠습니다.
'마젠토 2' 카테고리의 다른 글
마젠토 2 모듈 만들기 (1) | 2024.11.17 |
---|---|
Magento 디렉터리 구조 (0) | 2024.11.17 |
마젠토 - 디버깅 모듈 설치 & 로그 (0) | 2024.11.17 |
마젠토 개발을 위한 IDE 설치 (1) | 2024.11.17 |
마젠토 디버깅 - Xdebug (1) | 2024.11.17 |