자유게시판

제목 ci4를 실무에 적용중입니다.
글쓴이 변종원(웅파) 작성시각 2020/11/27 15:41:57
댓글 : 7 추천 : 2 스크랩 : 0 조회수 : 1362   RSS

매뉴얼 보면서 오타와 잘못 된 부분 찾으면서 되도록이면 외부 라이브러리 사용하지 않고 구현중입니다.

구현내용은 간단 cms + 게시판 api 입니다.

 

간단 cms

1. 특정 디렉토리에 서브 디렉토리(A)를 만들고 파일(B)을 올려놓으면 네비게이션 메뉴를 자동으로 만들어줍니다.

/public/menus/10-A/1-B.html

                                2-C.html

(앞의 접두어인 숫자는 정렬용입니다.)

ex.com/A/B, ex.com/A/C 메뉴 생성 및 각 html 파일 연결.

정적인 페이지는 위와 같이 구현해서 디자이너가 페이지 작업해서 디렉토리 생성해서 올리면 자동으로 메뉴와 주소가 만들어지고 

파일에 연결되는 구조입니다.

2. 게시판은 소스 내부에서 프로그램을 할 주소를 선언하고 특정 주소는 게시판으로 연결되도록 되어 있습니다. (게시판 요소는 어차피 개발자를 거쳐야 하므로)

게시판은 api로 구현되었고 api로 호출하거나 모델을 직접 호출하여 구현할 수 있게 되어 있습니다.

ckeditor5 적용하고 이미지 업로드와 태그 부분까지 적용되어 있습니다.

게시판 테마도 다르게 사용하도록 디렉토리로 구분하여 구현했습니다.

3. api : ci4의 내부 기능을 이용하여 validation 및 request, response 처리를 합니다.

4. 회원 부분은 외부 api를 사용하도록 되어 있습니다. 

 

작업이 끝나고 나면 정리를 해서 소스 공개할 예정입니다.

 

직접 작업해본 소감은 코딩량이 1/3 가량 줄어들었고 빠르게 개발할 수 있습니다. (매뉴얼 숙독 필수)

특히나 페이징, response, model 등 상당히 편리해졌고 plugin 구조를 외부 라이브러리 없이 개발할 수 있게 되었습니다.

소스 공개후 같이 개발하실 생각이 있으신 분들과 협업을 통해 발전시켜나갈 생각입니다. 

 다음글 PHP쪽이 일본에서 많이 쓰이나요? (3)
 이전글 php8이 공식 릴리즈 되었습니다. (6)

댓글

테러보이 / 2020/11/27 15:50:41 / 추천 0
굿굿 입니다.!
한대승(불의회상) / 2020/11/27 17:26:55 / 추천 0
좋아요~
변종원(웅파) / 2021/01/15 09:21:32 / 추천 0

다국어까지 진행됐습니다.

프로그램 내부의 언어는 ci4 locale 파일을 이용해서 진행했고 기타 디자이너나 퍼블리셔가 작업하는 html파일은 locale에 해당하는 언어 디렉토리로 구분해서 보여줍니다.

변종원(웅파) / 2021/01/15 09:25:35 / 추천 0

ci3와 ci4를 현업에서 같이 쓰다보니 혼돈이 좀 오네요. 

ci4에서 생성자로 ci3처럼 __construct 를 사용할 수 있으나 부모 생성자를 호출할 경우 에러가 납니다. 

그래서 ci4에서는 BaseController.php의 initController 를 생성자로 사용해야 합니다.

한대승(불의회상) / 2021/01/15 12:11:39 / 추천 0
__construct() 생성자를 선언하지 않은 이유는 뭘까요?
변종원(웅파) / 2021/01/15 12:56:28 / 추천 0
한대승/ 질문을 이해하지 못하겠어요. ^^
한대승(불의회상) / 2021/01/15 13:37:53 / 추천 0

ci3 까지는 __construct() 생성자를 사용하여 컨트롤러를 정의했는데,

ci4 부터는 컨트롤러에 __construct() 생성자를 사용하지 않는 이유가 뭘까 궁금해서..

디자인 패턴의 일종인가??