Study
CakePHP

Seed Data

Penjelasan

Seed data di CakePHP juga bagian dari plugin cakephp/migrations — dibuat lewat bin/cake bake seed, disimpan di config/Seeds, dijalankan lewat bin/cake migrations seed.

Contoh Konsep

<?php

use Migrations\AbstractSeed;

class ProdukSeed extends AbstractSeed
{
    public function run(): void
    {
        $data = [
            ['nama' => 'Kaos CompileDaily', 'harga' => 99000],
            ['nama' => 'Topi CompileDaily', 'harga' => 59000],
        ];

        $table = $this->table('produk');
        $table->insert($data)->save();
    }
}

// Jalankan lewat terminal:
// bin/cake migrations seed --seed ProdukSeed

Praktikum

Buat ArtikelSeed yang membuat minimal 3 record artikel lewat array $data, lalu $this->table('artikel')->insert($data)->save(). Tulis juga perintah console untuk menjalankan seed itu sebagai komentar.

Editor Latihan

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

Tips

$table->insert($data)->save() menerima ARRAY BERISI BANYAK ROW sekaligus dalam satu pemanggilan (bulk insert) — jauh lebih efisien dibanding memanggil insert() satu-satu di dalam loop untuk banyak record.