Membuat Database

Hal pertama yang akan kita lakukan adalah mengatur koneksi dari aplikasi (Laravel) ke dalam database. Di Laravel kita sudah disesiakan sebuah file konfigurasi untuk mempermudah developer atau pengembang, nama file tersebut bernama .env. Jadi, silahkan teman-teman buka project Laravel-nya menggunakan Text Editor, kemudian buka file .env dan cari kode berikut ini.

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=mini_bootcamp
DB_USERNAME=root
DB_PASSWORD=

Karena sudah berhasil melakukan konfigurasi di dalam Laravel, berarti kita lanjutkan membuat database-nya di dalam MySQL. Jika teman-teman menggunakan XAMPP, maka kita bisa memanfaatkan DBMS (database management system) seperti PhpMyAdmin untuk mempermudah kita dalam pembuatan database. Silahkan teman-teman buka http://localhost/phpmyadmin, kemudian silahkan buat database baru dengan nama mini_bootcamp, kurang lebih seperti berikut ini.

Membuat Model dan Migration

Setelah Laravel dan database MySQL terhubung, maka kita bisa lanjutkan belajar membuat Model dan Migration di dalam Laravel. Silahkan teman-teman jalankan perintah berikut ini di dalam terminal/CMD dan pastikan sudah berada di dalam project Laravel-nya.

php artisan make: model Post -m

Perintah di atas, digunakan untuk membuat sebuah Model baru dengan nama Post dan jika teman-teman perhatikan, di atas kita menambahkan flag -m yang artinya kita akan membuat file Migration-nya sekaligus. Jika perintah di atas berhasil dijalankan, maka kita akan mendapatkan 2 file baru, yang berada di dalam folder:

  • app/Models/Post.php

  • database/migrations/.....table.php

lalu masukkan field seperti ini di migratios posts

public function up(): void
{
    Schema::create('posts', function (Blueprint $table) {
        $table->id();
        $table->string('image');
        $table->string('title');
        $table->text('content');
        $table->timestamps();
    });
}

Konfigurasi Mass Assigment

Field atau column yang sudah kita tambahkan di dalam migration tidak akan pernah bisa menyimpan data ke dalam database sebelum kita melakukan konfigurasi Mass Assignment di dalam Model. Mass Assignment sendiri merupakan sebuah properti yang ada di dalam Model dan digunakan untuk mengizinkan field-field melakukan manipulasi data ke dalam database, seperti insert, update, delete dan lain sebagainya. Silahkan teman-teman buka file app/Models/Post.php, kemudian ubah semua kode-nya menjadi seperti berikut ini.

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

class Post extends Model
{
    use HasFactory;

    /**
     * fillable
     *
     * @var array
     */
    protected $fillable = [
        'image',
        'title',
        'content',
    ];
}

Setelah itu jalankan migration nya

php artisan migrate

Last updated

Was this helpful?