CI 묻고 답하기

제목 카테고리별 관리(등록/수정/삭제) 기능을 구현하는 방법에 대해서..
카테고리 일반
글쓴이 packesign 작성시각 2019/05/27 18:40:41
댓글 : 2 추천 : 0 스크랩 : 0 조회수 : 514   RSS

CI 를 열심히 배우면서 관리자 기능을 구성중인 개발자입니다.

기능들을 구현하다보니까 개발 방법론과 관련해서 궁금한 것이 생겼습니다.

 

예를 들어서 관리자의 '설정' 메뉴에 '상품관리' / '지점관리' / '계정관리' 와 같은 개념의

기능들이 포함되고 각 기능별로 등록/수정/삭제 기능이 있다면 이를 MVC 패턴으로

어떻게 구현하는 것이 일반적인가요?

 

controllers 폴더내 소스구조에 대해서 제가 생각한 몇가지 방법으로는

 

1. settings.php 내에서 전부 관리

   (1) settings 클래스 내에서 상품(product) / 지점(spot) / 계정(account) 함수로 관리

   (2) 등록/수정/삭제에 대해서는 write/update/delete 함수로 관리하며 각 카테고리별 정보를 매개변수로 전달

 

2. 상품(product.php) / 지점(spot.php) / 계정(account.php) 별 소스로 관리

   (1) 각 클래스별로 등록/수정/삭제 함수 생성해서 관리

   (2) URL 사용성 측면에서 config/routes.php 로 별도 관리

 

위에 설명에서 제가 문의드린 바가 잘 전달되었을지는 조금 의문이지만 혹시 이런 관리자 내

기능에 대해서 일반적인 방법이 어떤 것이 있을까요??

고수 여러분들의 답변 부탁드리겠습니다!

 다음글 코드이그나이터는 보안 이슈가 어떤지 궁금 합니다. (1)
 이전글 [library] session 의 flashdata ... (1)

댓글

변종원(웅파) / 2019/05/27 21:54:08 / 추천 0

보통은 상품/지점/계정을 컨트롤러별로 분리해서 만듭니다. 공통 crud 기능이 있으면 공통모델이나 라이브러리로 만들구요.



사이트가 작고 기능이 별로 없다면 하나의 파일에서 관리할 수도 있습니다. (에이전시에서 일반적인 회사소개 홈페이지 제작하는 경우)



그렇지만 위와 같이 상품, 지점 정도면 분리를 해서 관리되어야 합니다.

kaido / 2019/05/28 15:40:13 / 추천 0

정답은 없지만 웅파님 의견대로 2번을 추천.

모듈의 격리화를 해보고 1번처럼 만드는것과 안해보고 1번처럼 만드는것은 차이가 있습니다.

아직 감이 안잡히는 분들에게는 우선 잘개 쪼개는 것부터 해보라고 권합니다.

쪼개진 메소드를 서비스이라는 개념으로 묶고 그룹화 해보면 자연스럽게 분리가 나뉩니다.

물론 이렇게 말하는 저도 이런 류의 고민은 매번 합니다.