Study
CodeIgniter

Seeder & Faker

Penjelasan

Seeder di CodeIgniter dibuat lewat php spark make:seeder, disimpan di app/Database/Seeds, dan dijalankan lewat php spark db:seed NamaSeeder. Untuk data dummy dalam jumlah banyak, CodeIgniter menyertakan library Faker bawaan lewat $this->faker.

Contoh Konsep

<?php

namespace App\Database\Seeds;

use CodeIgniter\Database\Seeder;

class ProdukSeeder extends Seeder
{
    public function run()
    {
        $this->db->table('produk')->insert([
            'nama' => 'Kaos CompileDaily',
            'harga' => 99000,
        ]);
        $this->db->table('produk')->insert([
            'nama' => 'Topi CompileDaily',
            'harga' => 59000,
        ]);
    }
}

// Jalankan lewat terminal:
// php spark db:seed ProdukSeeder

Praktikum

Buat seeder ArtikelSeeder yang membuat minimal 3 record lewat $this->db->table('artikel')->insert() dengan judul dan isi bebas. Tulis juga perintah spark untuk menjalankan seeder itu sebagai komentar.

Editor Latihan

Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.

Tips

Sama seperti Laravel, seeder CodeIgniter dengan insert() biasa akan terus menambah data BARU tiap kali php spark db:seed dijalankan berulang — kalau butuh perilaku idempotent, cek dulu datanya sudah ada atau belum sebelum insert().