Tutorial CRUD Laravel Livewire SPA #2 : Membuat & Menjalankan Migration


Tutorial CRUD Laravel Livewire SPA #2 : Membuat & Menjalankan Migration

Tutorial CRUD Laravel Livewire SPA #2 : Membuat & Menjalankan Migration - Halo teman-teman semuanya, pada artikel kali ini kita semua akan belajar bagaimana cara membuat & menjalankan migration di Laravel.

Karena pada kasus studi kali ini kita akan membuat aplikasi CRUD sederhana, maka kita harus membuat sebuah migration table untuk menyimpan datanya nanti.

Langkah 1 - Membuat Migration

Pada langkah pertama ini, kita akan membuat sebuah Model dan sekaligus migration juga. Silahkan teman-teman jalankan perintah dibawah ini :

php artisan make:model Post -m

Perintah diatas akan membuat sebuah Model baru beserta file migrationnya, jika berhasil kurang lebih teman-teman akan mendpatkan pesan seperti berikut ini :

Model created successfully.
Created Migration: 2020_05_19_011732_create_posts_table

Oke, setelah migration berhasil dibuat, selanjutnya kita akan melakukan modifikasi dari file migration tersebut, seperti menambahkan coloumn, dll.

SIlahkan teman-teman buka filenya di database/migrations/2020_05_19_011732_create_posts_table.php dan ubahlah pada function up menjadi seperti berikut ini :

/**
* Run the migrations.
*
* @return void
*/
public function up()
{
   Schema::create('posts', function (Blueprint $table) {
     $table->id();
     $table->string('title');
     $table->text('content');
     $table->timestamps();
   });
}

Bisa teman-teman lihat dari perubahan yang sudah kita lakukan, disini kita berhasil menambahkan 2 coloumn baru, yaitu title dan content.

Langkah 2 - Menjalankan Migration

Setelah kita berhasil membuat migration, langkah selanjutnya adalah kita akan menjalankan migration tersebut, hasil dari menjalankan migration nanti kita akan dibuatkan sebuah table baru sesuai dengan apa yang sudah kita buat diatas.

Jalankan perintah berikut ini untuk menjalankan migration :

php artisan migrate

Jika berhasil, maka teman-teman akan melihat pesan kurang lebih seperti berikut ini :

Migration table created successfully.
Migrating: 2014_10_12_000000_create_users_table
Migrated:  2014_10_12_000000_create_users_table (0.04 seconds)
Migrating: 2019_08_19_000000_create_failed_jobs_table
Migrated:  2019_08_19_000000_create_failed_jobs_table (0.02 seconds)
Migrating: 2020_05_19_011732_create_posts_table
Migrated:  2020_05_19_011732_create_posts_table (0.01 seconds)

Dan jika teman-teman lihat databasenya di http://localhost/phpmyadmin maka teman-teman akan mendaptkan sebuah tabel baru dengan nama posts, kurang lebih seperti gambar dibawah ini :


Langkah 3 - Konfigurasi Model

Setelah kita berhasil menjalankan migration, langkah selanjutnya kita akan melakukan beberapa konfigurasi di dalam file Model Post, silahkan buka app/Post.php dan ubahlah kodenya menjadi seperti berikut ini :

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Post extends Model
{
    /**
     * mass assigment
     */
    protected $guarded = [];
}

Dari perubahan yang kita lakukan, disini kita menambahkan sebuah variable protected untuk melakukan mass assigment ke dalam table.

Mass Assigment ini digunakan untuk mengizinkan field dari table mana saja yang diperbolehkan melakukan insert data ke dalam database.

Dari contoh diatas, kita menggunakan sintaks seperti berikut ini :

/**
* mass assigment
*/
protected $guarded = [];

Kita sebenarnya juga bisa menggunakan kode seperti berikut ini :

/**
* mass assigment
*/
protected $fillable = [
    ‘title',
    ‘content'
]

SOURCE CODE

Untuk teman-teman yang ingin mengunduh source codenya : https://github.com/maulayyacyber/CRUD-Laravel-Livewire-SPA

KESIMPULAN

Pada tutorial kali ini kita semua telah belajar bagaimana cara membuat sebuah model beserta migration & menjalankan migration itu sendiri dan kita juga belajar bagaimana membuat mass assigment di dalam model.

Jika teman-teman ada pertanyaan atau kendala saat mencoba, silahkan teman-teman bisa bertanya melalui kolom komentar dibawah artikel ini.

Terima Kasih


Fika Ridaul Maulayya
Full-Stack Developer, Content Creator and CO-Founder SantriKoding.com

Suka dengan tulisan di SantriKoding? Kamu bisa memberikan dukungan dengan berdonasi atau bagikan konten ini di sosial media. Terima kasih atas dukungan Anda!

KEBIJAKAN KOMENTAR

Saat memberikan komenatar silahkan memberikan informasi lengkap tentang error, seperti: screenshot, link kode, dll. Baca aturan komentar kami