Setelah berhasil melakukan installasi splade pada project laravel kita, kurang lengkap rasanya jika kita belum membuat sebuah fitur CRUD sederhana, maka dari itu sebelum membuat fitur tersebut kita akan membuat Model dan Migration terlebih dahulu.
Langkah 1 - Konfigurasi Koneksi Database
Hal pertama yang harus dilakukan adalah mengatur koneksi dari aplikasi laravel kita ke dalam database. Caranya sangat mudah sekali karena laravel sendiri sudah menyediakan sebuah file konfigurasi yang bisa kita gunakan, silahkan teman-teman buka file yang bernama .env
pada root project aplikasi laravel kita, pastikan teman-teman telah membuka Text Editor yang teman-teman pakai untuk membuka file project kita.
Selanjutnya silahkan teman-teman cari kode berikut pada file .env
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=
Kemudian silahkan ubah, menjadi berikut ini :
DB_DATABASE=db_splade_tutorial
DB_USERNAME=root
DB_PASSWORD=
Pada perubahan kode diatas, kita mengubah DB_DATABSE
menjadi db_splade_tutorial
dan untuk DB_PASSWORD
silahkan disesuaikan dengan konfigurasi dari MYSQL-nya masing-masing.
Langkah 2 - Membuat Model dan Migration
Setelah berhasil melakukan konfigurasi database kita lanjutkan dengan membuat sebuah Model dan Migration didalam project laravel kita.
Silahkan teman-teman jalankan perintah berikut ini pada terminal/command prompt(CMD)
dan pastikan sudah berada pada project laravel-nya.
php artisan make:model Post -m
Perintah diatas, digunakan untuk membuat sebuah Model baru dengan nama Post
dan jika teman-teman perhatikan, diatas kita menambahkan sebuah 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 pada folder :
-
app/Models/Post.php
-
database/migrations/2023_04_13_144543_create_posts_table.php
Selanjutnya, kita akan mencoba menambahkan beberapa attribute di dalam file migration posts. Silahkan buka file database/migrations/2023_04_13_144543_create_posts_table.php
, kemudian pada function up
ubahlah menjadi seperti berikut ini :
public function up(): void
{
Schema::create('posts', function (Blueprint $table) {
$table->id();
$table->string('title');
$table->string('image');
$table->string('content');
$table->timestamps();
});
}
Dari perubahan kode di atas, kita menambahkan 3 attribute baru yaitu :
ATTRIBUTE |
TYPE DATA |
title |
string |
image |
string |
content |
string |
Langkah 3 - Konfigurasi Mass Assignment
Field atau column yang sudah kita tambahkan di dalam migration tidak akan bisa menyimpan data kedalam 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 kedalam 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 = ['title', 'image', 'content'];
}
Dari perubahan kode diatas, kita menambahkan properti baru dengan nama $fillable
dan didalamnya kita berikan value dari field atau column yang kita buat sebelumnya di dalam Migration.
Langkah 4 - Menjalankan Migration
Agar field atau column didalam migration kita digenerate kedalam database, maka kita perlu menjalankan perintah artisan migrate
dari laravel.
Silahkan teman - teman jalankan perintah berikut ini di dalam terminal/command prompt(CMD)
dan pastikan sudah berada di dalam project Laravel-nya.
php artisan migrate
Jika pertinah diatas berhasil di jalankan, maka kurang lebih seperti ini hasilnya :
Membangun Aplikasi Inventory Dengan Laravel & Tailwind CSS: https://santrikoding.com/ebook/membangun-aplikasi-inventory-dengan-laravel-tailwind-css?ref=8659VS4962
Membangun Website Online Course Dengan Laravel, Alpine.js dan Tailwind CSS: https://santrikoding.com/ebook/membangun-website-online-course-dengan-laravel-alpinejs-dan-tailwind-css?ref=8659VS4962