3. 모델(Model) 및 데이터베이스 연동
Model은 데이터베이스와의 상호작용을 담당합니다. 이를 통해 컨트롤러와 뷰는 데이터 처리 로직으로부터 분리됩니다.
3.1. 데이터베이스 설정 (app/Config/Database.php)
app/Config/Database.php 또는 .env 파일에서 데이터베이스 접속 정보를 설정합니다 (MySQL, PostgreSQL 등).
// .env 파일 예시
database.default.hostname = localhost
database.default.database = my_database
database.default.username = root
database.default.password =
3.2. 모델 생성 및 데이터 조회
app/Models/ProductModel.php를 생성하고, CodeIgniter의 기본 모델 기능을 상속받아 사용합니다. $table 속성을 설정하면 해당 테이블에 자동으로 연결됩니다.
// app/Models/ProductModel.php
namespace App\Models;
use CodeIgniter\Model;
class ProductModel extends Model
{
protected $table = 'products';
protected $primaryKey = 'id';
protected $allowedFields = ['name', 'price', 'description'];
// 모든 상품 목록을 가져오는 메서드
public function getAllProducts()
{
return $this->findAll();
}
}
이제 컨트롤러에서 이 Model을 호출하여 데이터를 사용할 수 있습니다.