본문 바로가기
웹 개발/웹프로그래밍

코드이그나이터 | 모델-뷰-컨트롤러 (MVC)

by KISCH 2020. 11. 5.
반응형

 

Model

애플리케이션을 구성하는 모든 규칙과 데이터는 모델에 의해서 관리됩니다.

데이터베이스와 연동하여 사용하기 위한 PHP클래스.

 

1 | CI 데이터베이스 설정

Application/config/database.php

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
$db['default'] = array(
'dsn'    => '',
'hostname'=> '127.0.0.1',
'username'=> 'root',
'password'=> 'candydb!',
'database'=> 'candyfalling',
'dbdriver'=> 'mysqli',
'dbprefix'=> '',
'pconnect'=> FALSE,
'db_debug'=> (ENVIRONMENT !== 'production'),
'cache_on'=> FALSE,
'cachedir'=> '',
'char_set'=> 'utf8',
'dbcollat'=> 'utf8_general_ci',
'swap_pre'=> '',
'encrypt'=> FALSE,
'compress'=> FALSE,
'stricton'=> FALSE,
'failover'=> array(),
'save_queries'=> TRUE
);
cs

 

2 | 데이터베이스 라이브러리 로드

application/config/autoload.php 파일 $autoload['libraries]배열에 database 추가
controller 내에서 $this->load->database() 호출

 

3 | 모델 파일 생성

Application/models 디렉토리 아래 모델명_model.php형식으로 파일 생성
CI_Model 상속. 첫 글자는 대문자

 

4 | 모델 로드

Model를 이용해 데이터를 조작하는 로직을 메소드로 정의. 메소드는 Controller를 통해서 사용
모델 로드 : $this->load->model('모델파일이름')

모델 호출 : $this->test_model->gets();

 

 

View

 

1 | 개념

개념 : 사용자들이 볼 수 있는 영역. 화면 출력
위치 : application/views
방식 : 주로 Html

 

2 | 호출

절대로 직접 호출되지 않고 Controller를 통해 호출
$this->load->view("파일명")

 

 

 

 

 

 

 

 

 

Controller

 

1 | 컨트롤러

URL과 상호 작용하는 클래스 파일
컨트롤러와 URL 맵핑

 

2 | 클래스 생성자

parent::_construct(); // 부모 controller를 수동으로 호출 

 

3 | 함수 호출

같은 컨트롤러 : $this->함수명

 

 

코드이그나이터

 

 

 

 

 

관련포스트

 

 

반응형

'웹 개발 > 웹프로그래밍' 카테고리의 다른 글

HTML | 4. meta 태그의 속성과 종류  (0) 2020.12.04
JavaScript | Ajax 와 Ajaxform 파일업로드  (0) 2020.12.04
CSS | 1. 기초  (0) 2020.11.23
HTML | 1. 기초  (0) 2020.11.20
코드이그나이터 | 개념  (2) 2020.11.03
PHP | 기초문법  (0) 2020.10.20
XML 기초 특징 구조  (0) 2020.09.29
JavaScript | Ajax 기초  (0) 2020.09.29

댓글