Bất cứ khi nào bạn có một dự án quản trị không có trang đăng ký, thì bạn sẽ làm gì? Ý tôi là, bạn phải tạo ít nhất một người dùng quản trị. Vì vậy, về cơ bản, anh ấy có thể đăng nhập và truy cập toàn bộ bảng quản trị. Nhưng bạn không có trang đăng ký ở mặt trước. bạn chỉ có trang đăng nhập. Vì vậy, bạn có thể tạo quản trị viên trực tiếp từ cơ sở dữ liệu không?, nếu có, bạn phải luôn tạo trực tiếp người dùng quản trị viên mới từ cơ sở dữ liệu khi tạo cấu hình mới cho dự án của mình. Nhưng tôi sẽ đề xuất bạn tạo trình tạo quản trị viên để bạn có thể tạo người dùng quản trị bằng trình tạo trình tạo laravel 8. Chỉ cần kích hoạt lệnh để chạy seeder trong laravel 8.
Điều tương tự, nếu bạn có cấu hình cài đặt trướcdefiCuối cùng, bạn có thể tạo một trình gieo hạt cài đặt và thêm cấu hình trướcdefiđược đưa vào bảng cơ sở dữ liệu.
Laravel cung cấp một phương pháp dễ dàng để tạo dữ liệu thử nghiệm vào cơ sở dữ liệu bằng cách sử dụng các lớp seeder. Bạn có thể tạo cơ sở dữ liệu của mình trong Laravel để thêm dữ liệu giả mạo vào cơ sở dữ liệu của mình cho mục đích thử nghiệm.
Đầu tiên chúng ta tạo một seeder bằng lệnh sau:
php artisan make:seeder UserSeeder
Sau khi chạy lệnh ta sẽ có một file UserSeeder.php trong thư mục seeds
. Các lớp học seed
được lưu trữ trong thư mục database/seeders
.
namespace Database\Seeders;
use App\Models\User;
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\Hash;
class UserSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
User::create([
'name' => 'John Jackson',
'email' => 'john@jackson.com',
'mobile' => '123456789',
'password' => Hash::make('john@123')
]);
}
}
Bây giờ hãy xem làm thế nào chúng ta có thể gọi những người gieo hạt khác. Phương thức gọi được sử dụng để thực thi các lớp hạt nhân bổ sung trong lớp DatabaseSeeder. Nó cho phép bạn chia việc tạo cơ sở dữ liệu của mình thành nhiều tệp để không có lớp trình tạo đơn lẻ nào trở nên quá lớn. Phương thức gọi chấp nhận một mảng các lớp seeder cần được thực thi.
<?php
use Illuminate\Database\Seeder;
class DatabaseSeeder extends Seeder
{
public function run()
{
$this->call([
UserSeeder::class,
PostSeeder::class,
]);
}
}
Lệnh để chạy seeder
php artisan db:seed
Lệnh chạy một seeder riêng lẻ
php artisan db:seed –class=UserSeeder
Bạn cũng có thể chạy seeding
của cơ sở dữ liệu bằng lệnh migrate:fresh
kết hợp với tùy chọn –seed
. Lệnh này loại bỏ tất cả các bảng, chạy lại tất cả các lần di chuyển và xây dựng lại cơ sở dữ liệu.
php artisan migrate:fresh --seed
Ercole Palmeri
Bạn cũng có thể thích:
Một ca phẫu thuật tạo hình mắt bằng cách sử dụng trình xem thương mại Apple Vision Pro đã được thực hiện tại Phòng khám đa khoa Catania…
Phát triển kỹ năng vận động tinh thông qua tô màu giúp trẻ chuẩn bị cho những kỹ năng phức tạp hơn như viết. Để tô màu…
Ngành hải quân là một cường quốc kinh tế toàn cầu thực sự, đang hướng tới thị trường 150 tỷ...
Thứ Hai tuần trước, Financial Times đã công bố một thỏa thuận với OpenAI. FT cấp phép cho hoạt động báo chí đẳng cấp thế giới…