Cara menggunakan php artisan make:model

Cara menggunakan php artisan make:model

Assalamualaikum, Wr. Wb. Kali ini kita akan belajar untuk mengeksplore lebih dalam tentang opsi-opsi pada pembuatan Model di Laravel. Seperti yang sudah kita ketahui bahwa di Laravel kita sangat dimanjakan fitur membuat Model dengan hanya menggunakan command line. Tidak hanya Model, tapi juga controller, file migrasi, seeder, dll.

Nah tahukah kalian bahwa sebenarnya kita dapat membuat file-file yang lain ketika kita membuat Model ini. Apa saja itu? Kalian dapat cek sendiri di command line dengan mengetikkan

php artisan make:model --help

Maka akan muncul seperti berikut: 

Saat membuat tutorial ini saya menggunakan Laravel versi 7 mungkin jika kalian sudah berada di masa depan di versi yang terbaru bisa jadi beda. Oke sekarang kita bahas satu persatu meski tak semua.

Untuk menjalankannya kalian dapat melihat caranya di atas bagian Usage

Misal kita ingin membuat Model sekaligus Controller nya, maka kalian dapat mengetikkan kode seperti berikut:

Bisa dilihat, kita tidak hanya membuat Model namun juga Controllernya sekaligus. Bagaimana jika ingin menggunakan multipel opsi, misal ingin membuat Model, Controller dan file Migration, kalian tinggal mengabungkannya seperti ini.

Sekarang jika kita ingin membuat semuanya secara bersamaan, kita tinggal menggunakan opsi -a seperti contoh berikut.

Nah lengkap semuakan, semudah itu jika kita bisa memaksimalkan semua fitur yang ada pada Laravel ini. Untuk opsi yang lain silahkan kalian coba-coba sendiri, Oke!, Sekian tutorial kali ini semoga bermanfaat, Wassalamualaikum, Wr. Wb.

Halo teman-teman semuanya, di artikel sebelumnya kita telah berhasil belajar bagaimana cara melakukan proses installasi dan menjalankan projecr baru di Laravel 9. Sekarang, kita akan lanjutkan belajar bagaimana cara membuat migration di Laravel 9.

Migration adalah sebuah version control database, dimana akan membantu team untuk mengubah dan membagikan sebuah schema database dari aplikasi yang dibangun. Jika sebelumnya teman-teman biasanya membuat table-table secara manual di dalam database, maka dengan migration hal itu sudah tidak perlu dilakukan lagi.

Langkah 1 - Konfigurasi Koneksi Database

Karena akan bekerja menggunakan database, maka kita perlu melakukan konfigurasi koneksi database-nya terlebih dahulu. Silahkan buka project kita menggunakan Text Editor, kemudian cari file yang bernama .env.

Jika sudah ketemu, silahkan cari kode berikut ini di dalam file .env.

DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=

Dan ubahlah menjadi seperti berikut ini :

DB_DATABASE=db_laravel_9
DB_USERNAME=root
DB_PASSWORD=

Di atas, kita atur untuk DB_DATABASE atau nama database yang akan kita gunakan menjadi db_laravel_9. Kemudian untuk DB_USERNAME kita biarkan default, yaitu root dan untuk DB_PASSWORD silahkan disesuaikan dengan konfigurasi-nya massing-masing. Jika menggunakan XAMPP, maka untuk password-nya dikosongkan saja (by default kosong).

INFORMASI : silahkan restart server Laravel-nya setelah melakukan perubahan di dalam file .env.

Langkah 2 - Membuat Database

Setelah kita berhasil melakukan konfigurasi koneksi database, sekarang kita lanjutkan untuk membuat database-nya. Silahkan buka http://localhost/phpmyadmin. Kemudian silahkan buat database baru dengan nama db_laravel_9. Kurang lebih seperti berikut ini :

Cara menggunakan php artisan make:model

Langkah 3 - Membuat Model dan Migration

Sekarang, kita lanjutkan belajar bagaimana cara membuat model dan migration di Laravel 9. Silahkan jalankan perintah berikut ini 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/2022_02_09_003543_create_posts_table.php

INFORMASI : untuk nama file migration akan random sesuai tanggal pembuatannya.

Langkah 4 - Menambahkan Field Table

Setelah berhasil membuat model dan migration, sekarang kita lanjutkan untuk menambahkan field atau kolom 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_02_09_003543_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 :

FIELDTYPE DATA
image string
title string
content text

Langkah 5 - Menjalankan Migration

Sekarang kita akan belajar menjalankan perintah migrate. Perintah ini akan digunakan untuk melakukan proses create table posts beserta field yang ada di dalamnya ke dalam database.

Silahkan jalankan perintah berikut ini di dalam terminal/CMD :

php artisan migrate

Jika perintah di atas berhasil dijalankan, maka akan mendapatkan output seperti berikut ini :

Cara menggunakan php artisan make:model

Dan jika kita cek di dalam database, maka table-table beserta field-nya juga otomatis ter-generate.

Cara menggunakan php artisan make:model

Langkah 6 - 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 :

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.

Sampai disini pembahasan bagaimana cara membuat model dan migration di Laravel 9. Di artikel selanjutnya kita semua akan belajar bagaimana cara menampilkan data dari database di Laravel 9.

Terima Kasih


  • EBOOK - Membangun Toko Online Dengan Laravel, Vue Js dan Payment Gateway : https://bit.ly/lp-ebook-laravel-vue-payment-gateway
  • EBOOK - Membangun Webiste Wisata Berbasis GIS dan PWA dengan Laravel, React.js dan Mapbox : https://bit.ly/ebook-gis-laravel-react-mapbox

Artikel ini dibaca sebanyak 11.093 kali