Lorem ipsum dolor sit amet, consectetur adipiscing elit. Test link

[Tutorial Laravel] 4. Membuat Model dan Migration

 

MEMBUAT MODEL DAN MIGRATION

1 - Membuat Model dan Migration
Silahkan jalankan perintah berikut di dalam terminal/CMD dan pastikan berada di dalam project Laravel-nya.

 php artisan make:model Post -m

Perintah di atas digunakan untuk membuat model baru dengan nama Post dan kita tambahkan flag -m, yang artinya file migration nya juga akan ikut dibuat.

Jika perintah di atas berhasil dijalankan, maka kita akan mendapatkan 2 file baru, yaitu :

    app/Models/Post.php
    database/migrations/2023_04_05_015807_create_posts_table.php
 

untuk nama file migration akan random sesuai tanggal pembuatannya.

Langkah 2 - Menambahkan Field Table

Setelah berhasil membuat model dan migration, sekarang kita lanjutkan untuk menambahkan field di dalam file migration. Field yang kita tambahkan ini akan digenerate di dalam table posts yang ada di database.

Silahkan buka file database/migrations/2022_11_16_015807_create_posts_table.php, kemudian pada bagian function up, ubah kode-nya menjadi seperti berikut ini :

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

Dari perubahan kode di atas, kita menambahkan 3 field baru, yaitu :
FIELD     TYPE DATA
image     string
title     string
content     text
Langkah 3 - Konfigurasi Mass Assigment

Mass Assigment di Laravel memungkinkan kita untuk mengizinkan sebuah field dari table agar dapat menyimpan sebuah data. Karena table yang kita gunakan nantinya buat menyimpan data, maka kita perlu melakukan konfigurasi Mass Assigment-nya terlebih dahulu.

Silahkan buka file app/Models/Post.php, kemudian ubah 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',
    ];
}

Di atas, kita menambahkan properti baru yang bernama $fillable. Properti tersebut yang dinamakan Mass Assigment di Laravel. Diman di dalamnya kita menambahkan field-field yang diizinkan untuk melakukan manipulasi data.

Posting Komentar

© Belajar TIK. All rights reserved. Premium By Raushan Design