พูดให้เข้าใจง่าย ๆ ก็คือ การสร้าง ตารางต้นแบบ และข้อมูลที่จะใช้งานเมื่อเริ่มต้นระบบนั้นเองครับ
1 |
php artisan make:migration create_blogs_table |
เข้าไปในโฟลเดอร์ laravel\database\migrations จะมีไฟล์ที่ชื่อ 2017_07_22_072618_create_blogs_table.php ถูกสร้างขึ้นมา
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
<?php use Illuminate\Support\Facades\Schema; use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; class CreateBlogsTable extends Migration { /** * Run the migrations. * * @return void */ public function up() { // } /** * Reverse the migrations. * * @return void */ public function down() { // } } |
ให้ทำการเพิ่มโค๊ดเพื่อสร้างตารางและฟิวด์ โดยใช้ Schema::create() ตามตัวอย่างด้านล่าง
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
<?php use Illuminate\Support\Facades\Schema; use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Migrations\Migration; class CreateBlogsTable extends Migration { /** * Run the migrations. * * @return void */ public function up() { Schema::create('blogs', function (Blueprint $table) { $table->increments('id'); $table->string('title',150); $table->text('content'); $table->timestamps(); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::dropIfExists('blogs'); } } |
1 |
php artisan migrate --force |
ระบบจะทำการสร้างตาราง blogs มาให้ดังรูป
ฟิวด์ในตาราง
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
<?php use Illuminate\Database\Seeder; class BlogsTableSeeder extends Seeder { /** * Run the database seeds. * * @return void */ public function run() { DB::table('blogs')->delete(); DB::table('blogs')->insert([ 'title' => 'นี่คือหัวข้อแรกของบล็อค', 'content' => 'นี่คือเนื้อหาแรกของบล็อค', 'created_at' => date('Y-m-d H:i:s') ]); } } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
<?php use Illuminate\Database\Seeder; class DatabaseSeeder extends Seeder { /** * Run the database seeds. * * @return void */ public function run() { $this->call(BlogsTableSeeder::class); } } |
1 |
composer dump-autoload |
กด Enter แล้วตามด้วยคำสั่งด้านล่างนี้ เพื่อทำการเพิ่มข้อมูลให้กับตาราง
1 |
php artisan db:seed |
เข้ามาดูในตาราง blogs ก็จะมีข้อมูลที่เพิ่มเข้ามาแล้วครับ
อ้างอิง
http://www.saimok.com/2015/06/17/thai-laravel-5-migrations-seeding/
https://laravel.com/docs/5.4/migrations
https://scotch.io/tutorials/simple-and-easy-laravel-login-authentication
https://laravel.io/forum/01-31-2015-laravel5-seeder-reflectionexception-class-tableseeder-does-not-exist-in-illuminatecontainercontainerphp776
ป้ายกำกับ:laravel