menu

Laravel - Database migrations dan seeds pada laravel 4.2


Setelah pada tutorial sebelumnya kita sudah membuat sebuah koneksi database untuk project kita sekarang saatnya membuat isi dari database tersebut.

Tutorial ini akan menggunakan library dari laravel itu sendiri yaitu php artisan

Oke, langsung saja caranya

Jangan lupa samakan dulu struktur project laravel kita jika belum lihat disini

1. Pertama masuk ke path project kita kemudian ketikkan sintax artisan, seperti ini


2. Maka secara otomatis program artisan akan mengenerate file migration pada path protected/app/database/migration seperti ini


3. Buka file (tanggal)_User.php kemudian masukkan query tablenya, seperti ini
<?php
//ini database laravel
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

class User extends Migration {

 /**
  * Run the migrations.
  *
  * @return void
  */
 public function up()
 {
  Schema::create('users', function($table){
   $table->increments('id');
   $table->string('name');
   $table->string('username');
   $table->string('email');
   $table->string('password');
   $table->timestamps();
  });
 }

 /**
  * Reverse the migrations.
  *
  * @return void
  */
 public function down()
 {
  Schema::drop('users');
 }

}
4. Selanjutnya ketikkan code berikut pada command prompt


5. Maka secara otomatis akan terbentuk tabel baru bernama users


6. Kemudian kita akan mengisi tabel tersebut dengan perintah seed pertama buat dulu file seedernya dengan nama UserSeeder.php pada path protected/app/database/seeds seperti ini



7. Isi file UserSeeder.php dengan code berikut
<?php
 
class UserSeeder extends Seeder
{
    public function run()
    {
        DB::table('users')->delete();
        DB::table('users')->insert(array (
            array (
              'name'     => 'Dracule Mihawk',
              'username' => 'mihawk',
              'email'    => 'mihawk@gmail.com',
              'password' => Hash::make('rahasiakampret'),
            ),
            array (
              'name'     => 'Trafalgar Law',
              'username' => 'trafa',
              'email'    => 'trafa@gmail.com',
              'password' => Hash::make('rahasiakampret'),
            ),
        ));
    }
}
8. Edit file DatabaseSeeder.php isi dengan code berikut
<?php

class DatabaseSeeder extends Seeder {

 /**
  * Run the database seeds.
  *
  * @return void
  */
 public function run()
 {
  Eloquent::unguard();

  $this->call('UserSeeder');
 }

}

8. Ketikkan lagi pada cmd


9. Secara otomatis table users akan terisi seperti ini


===DONE!!!===