Wednesday, 19 March 2025

DAY6 Seeder และ Factories มันคืออะไรใน Laravel

07 Mar 2024
121
luminox watches

Seeder และ Factories มันคืออะไรใน Laravel

Seeder และ Factories มันคืออะไรใน Laravel

Seeder และ Factory เป็นเครื่องมือสำคัญสองอย่างใน Laravel ที่ช่วยในการจัดการข้อมูลในฐานข้อมูลของแอปพลิเคชันของคุณได้อย่างมีประสิทธิภาพ โดยมีหน้าที่แตกต่างกันดังนี้:

Seeder: Seeder ใช้สำหรับเตรียมข้อมูลและใส่ข้อมูลลงในฐานข้อมูล โดยทั่วไปแล้วใช้สำหรับสร้างข้อมูลตัวอย่างหรือข้อมูลทดสอบ โดย Seeder จะถูกเรียกใช้ในขณะที่คุณกำลังตั้งค่าระบบหรือการเริ่มต้นข้อมูลเบื้องต้น คุณสามารถสร้าง Seeder ด้วยคำสั่ง php artisan make:seeder และรัน Seeder ด้วยคำสั่ง php artisan db:seed

Factory: Factory ใช้สำหรับสร้างข้อมูลสมมติในรูปแบบของโมเดลของคุณ โดย Factory ช่วยให้คุณสร้างข้อมูลที่มีโครงสร้างคล้ายกับข้อมูลจริงที่คุณจะพบในฐานข้อมูล ซึ่ง Factory ทำงานร่วมกับ Eloquent Models โดยเฉพาะ เมื่อคุณสร้าง Factory คุณสามารถใช้งานในการสร้างข้อมูลโดยใช้ Method factory() ที่ให้มากับ Eloquent Model ของคุณ

สรุปคือ Seeder ใช้สำหรับเตรียมข้อมูลและใส่ข้อมูลลงในฐานข้อมูล ในขณะที่ Factory ใช้สำหรับสร้างข้อมูลสมมติที่คล้ายกับข้อมูลจริงที่อาจเจอในฐานข้อมูลของคุณ การใช้งานทั้งสองช่วยให้คุณสร้างและจัดการข้อมูลในแอปพลิเคชันของคุณได้อย่างมีประสิทธิภาพ

เย้! รอบหน้ามาสร้างข้อมูลลง database กันนะครับ

 

สร้าง demo users ด้วยการ Seed

  1. สั่ง php artisan make:seeder UsersTableSeeder
php artisan make:seeder UsersTableSeeder

php artisan make:seeder UsersTableSeeder

new-file-UserstebleSeeder

new-file-UserstebleSeeder

 

2. เปิด File UsersTableSeeder.php  แล้วทำการ copy  use Illuminate\Support\Facades\Hash;  ใส่ลงไป

use Illuminate\Support\Facades\Hash;

use Illuminate\Support\Facades\Hash;

DB::table('users')->insert([
//admin

[
‘name’=>’Admin’,
‘username’=>’admin’,
’email’=>’admin@gmail.com’,
‘password’=> Hash::make(‘111’),
‘role’=>’admin’,
‘status’=>’active’,
],
//agent
[

‘name’=>’Agent’,
‘username’=>’agent’,
’email’=>’agent@gmail.com’,
‘password’=> Hash::make(‘111’),
‘role’=>’agent’,
‘status’=>’active’,
],
//user
[
‘name’=>’User’,
‘username’=>’user’,
’email’=>’user@gmail.com’,
‘password’=> Hash::make(‘111’),
‘role’=>’user’,
‘status’=>’active’,
],
]);

 

หลังจากทำขั้นตอนนี้เรียบร้อยแล้วเราจะไปทำต่อใน DAY7 การสร้างข้อมูลจำลองด้วย Factory ใน Laravel

Thanat Sirikitphattana

แบ่งปันกัน เราอยู่กันไม่เกิน 100 ปีหรอกครับ
สุดท้ายก็ทิ้งไว้ที่โลก จะคงเหลือไว้แต่คุณงามความดีที่ให้ระลึกถึงกันครับ

Follow Us / Thanat Sirikitphattana