Tutorial Lumen Database

Dalam blog ini, akan di jelaskan tutorial mengenai Lumen Database

Tutorial ini melanjutkan tutorial projek sebelumnya yang ada pada link berikut :
https://nashrulahsanunadiya.blogspot.com/2019/10/tutorial-instalasi-lumen-dan-web.html

Membuat Koneksi Database
Untuk melakukan setting database, mari kita ikuti langkah-langkah dibawah ini:
 Buka file file bootstrap/app.php, edit filenya dengan mengubah code comment di uncomment:
$app->withFacades();
$app->withEloquent();


Buat database db_lumen terlebih dahulu.



Buka file .env. Ubah settingan dibawah ini sesuaikan dengan kebutuhan

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


Database Migration
Database migration digunakan untuk melakukan DDL pada SQL database dengan
menggunakan code PHP. Untuk membuat database migration, mari ikuti langkah-langkah
dibawah ini:

Buat table didalam database, kita akan membuat table dengan nama posts. Untuk membuat tablenya silahkan buka terminal/command prompt lalu ketik perintah ini (masuk dulu ke direktori/folder projek LumenService App) :

php artisan make:migration create_posts_table 

jika berhasil maka tampilannya akan seperti berikut :


Migration tersebut akan membuat file di folder
database/migrations/2019_10_19_035239_create_posts_table.
Nama file nya akan berbeda-beda dan menyesuaikan waktu ketika membuatnya, tapi patternya sama, yakni:
[tahun]_[bulan]_[tanggal]_[randon_number]_create_posts_table.php

Buka file database/migrations/[tahun]_[bulan]_[tanggal]_[randon_number]_create_posts_table.php 
kemudian edit function up menjadi seperti ini (lihat line 19 - 22):


Untuk mengubah code migration diatas ke dalam bentuk tabel di SQL database,
jalankan script dibawah ini.

php artisan migrate

jika berhasil, maka tampilannya akan seperti ini :


Model
Model digunakan untuk melakukan koneksi dan query ke Database. Untuk membuat model,
mari ikuti langkah-langkah dibawah ini:
Untuk memudahkan dalam memanage code, buat folder app/Models 


Buat file Post.php, simpan di folder yang baru di buat app/Models, code nya seperti ini :

 <?php   
 namespace App\Models;  
 use Illuminate\Database\Eloquent\Model;  
 class Post extends Model{  
      protected $fillable = array('title', 'content', 'status', 'user_id');  
 }  
 ?>  

Buat lagi file controller PostsController.php, simpan di folder app/Http/Controllers, code nya seperti ini :

 <?php   
 namespace App\Http\Controllers;  
 use App\Models\Post;  
 class PostsController extends Controller{  
      public function index(){  
           $posts = Post::Orderby("id","DESC")->paginate(10);  
           $outPut = [   
           "message" => "posts",  
           "results" => $posts];  
           return response()->json($posts, 200);  
      }  
 }  
 ?>  

Buka file dalam folder routes/web.php, tambahkan code dibawah ini:



Silahkan buka browser dan buka url localhost:8000/posts, Tampilannya akan seperti ini :


Tambahkan data/insert data kedalam tabel posts dalam database db_lumen

Jika sudah menambah data, buka kembali url localhost:8000/posts, maka tampilannya akan seperti ini

 
Lumen database telah berhasil.

Komentar

Postingan Populer