Để tạo seeder, bạn có thể sử dụng lệnh Artisan
'A New Hope',
'year' => '1977'
]];
App\Movie::create[[
'name' => 'The Empire Strikes Back',
'year' => '1980'
]];
}
}
3. Tất cả các seeder được tạo sẽ được đặt trong thư mục 'A New Hope',
'year' => '1977'
]];
App\Movie::create[[
'name' => 'The Empire Strikes Back',
'year' => '1980'
]];
}
}
4$ php artisan make:seeder MoviesTableSeeder
Seeders được tạo sẽ chứa một phương thức.
'A New Hope',
'year' => '1977'
]];
App\Movie::create[[
'name' => 'The Empire Strikes Back',
'year' => '1980'
]];
}
}
5. Bạn có thể chèn dữ liệu vào cơ sở dữ liệu của mình theo phương pháp này 'A New Hope',
'year' => '1977'
]];
App\Movie::create[[
'name' => 'The Empire Strikes Back',
'year' => '1980'
]];
}
}
Nhìn chung, bạn sẽ muốn gọi tất cả các seeder bên trong lớp
'A New Hope',
'year' => '1977'
]];
App\Movie::create[[
'name' => 'The Empire Strikes Back',
'year' => '1980'
]];
}
}
6Khi bạn đã viết xong các seeder, hãy sử dụng lệnh
'A New Hope',
'year' => '1977'
]];
App\Movie::create[[
'name' => 'The Empire Strikes Back',
'year' => '1980'
]];
}
}
0. Điều này sẽ chạy chức năng 'A New Hope',
'year' => '1977'
]];
App\Movie::create[[
'name' => 'The Empire Strikes Back',
'year' => '1980'
]];
}
}
5 của 'A New Hope',
'year' => '1977'
]];
App\Movie::create[[
'name' => 'The Empire Strikes Back',
'year' => '1980'
]];
}
}
6 Chúng tôi đã nhận được yêu cầu đối tượng liên tục và tương ứng. Đối với hướng dẫn ví dụ về laravel seeder trong nhiều ngày. Bây giờ, với sự đồng thuận của bạn, hãy hiểu khái niệm về trình tạo seeder laravel với ví dụ
Tại sao cần phải đẩy chủ đề trình gieo cơ sở dữ liệu trong hướng dẫn laravel? . Trong quá trình phát triển, việc thêm dữ liệu thực vào hơi khó khăn. Đây là những gì Database Seeder đặt ra để làm. Nó tạo dữ liệu giả hoặc giả cho bạn và kết hợp dữ liệu trong bảng cơ sở dữ liệu
Với nó, bạn có thể tạo đồng thời một máy gieo hạt hoặc nhiều máy gieo hạt. Bạn có thể kiểm tra ứng dụng laravel của mình bằng dữ liệu, dữ liệu này có vẻ thực ở một mức độ nào đó
Hướng dẫn này tạo ra các cơ hội tuyệt vời và trả lời các câu hỏi sau một cách tự nhiên
- Trình tạo cơ sở dữ liệu trong laravel là gì
- Cách tạo seeder trong laravel
- Tại sao chúng ta nên sử dụng database seeder trong laravel
Đừng lo lắng, tôi sẽ cố gắng trả lời tất cả các câu hỏi trên trong hướng dẫn này trong khả năng tốt nhất của mình
Ví dụ về trình tạo cơ sở dữ liệu Laravel
Hãy hiểu những gì laravel chính thức nói về Database Seeder
Laravel thêm một quy trình đơn giản để tạo cơ sở dữ liệu với dữ liệu thử nghiệm. Khác, các lớp seeder được giữ bên trong thư mục cơ sở dữ liệu/hạt giống
Nói chung, bạn có thể đặt tên cho bất cứ thứ gì bạn muốn, nhưng những cái tên chung chung nghe hợp lý hơn. Chẳng hạn như EmployeeSeeder, v.v. Nó đi kèm với lớp DatabaseSeeder, đây là lớp mặc định. Từ đây, bạn cũng có thể gọi các lớp seeder khác
Mục lục
- Cài đặt dự án Laravel
- Thiết lập cơ sở dữ liệu
- Quản lý mô hình và di chuyển
- Tạo Seeder
- Xác định nhiều Seeder
- Chạy Seeders và Migrate
- Tóm lược
Cài đặt dự án Laravel
Cuối cùng, để hiển thị cho bạn bản demo của trình tạo cơ sở dữ liệu trong laravel, chúng ta cần cài đặt một dự án laravel mới ngay từ đầu. Nếu muốn, bạn có thể bỏ qua bước này, nhưng chỉ khi bạn đã cài đặt ứng dụng
composer create-project laravel/laravel laravel-database-seeder --prefer-dist
Ở trên, lệnh liên hợp toàn bộ tệp dự án trong một thư mục. Sau đó, chúng ta phải vào bên trong thư mục dự án
cd laravel-database-seeder
Thiết lập kết nối cơ sở dữ liệu
Chúng tôi đã thiết lập một dự án laravel mới và bước tiếp theo là thiết lập cơ sở dữ liệu với MySQL. Chúng tôi viết toàn bộ hồi ký bên trong cơ sở dữ liệu MySQL, chẳng hạn như tạo cơ sở dữ liệu, bảng hoặc gieo các giá trị bên trong bảng
Mở tệp
cd laravel-database-seeder
7 của bạn và đặt đoạn mã sau, nó tạo kết nối thường xuyên giữa laravel và cơ sở dữ liệu để quản lý dữ liệuDB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=
Nếu bạn đang sử dụng máy chủ cục bộ MAMP trong macO; . tập tin env
UNIX_SOCKET=/Applications/MAMP/tmp/mysql/mysql.sock
DB_SOCKET=/Applications/MAMP/tmp/mysql/mysql.sock
Quản lý mô hình và di chuyển
Theo khung MVC, Mô hình được cho là xử lý logic nghiệp vụ của ứng dụng. Mô hình là một lớp nền tảng mô tả tốt nhất kiến trúc logic và mối quan hệ của một bảng dữ liệu trong cơ sở dữ liệu
Bạn cũng phải biết rằng mỗi bảng dữ liệu đều có một mô hình tương ứng, mô hình này truyền dữ liệu
Chạy lớp thủ công để tạo mô hình
cd laravel-database-seeder
8php artisan make:model Employee -m
Mở cơ sở dữ liệu/di chuyển/dấu thời gian_employee_table. php và thêm đoạn mã dưới đây
'A New Hope',
'year' => '1977'
]];
App\Movie::create[[
'name' => 'The Empire Strikes Back',
'year' => '1980'
]];
}
}
0Mở ứng dụng/Mô hình/Nhân viên. php và xác định các giá trị phương thức trong giá trị
cd laravel-database-seeder
9 'A New Hope',
'year' => '1977'
]];
App\Movie::create[[
'name' => 'The Empire Strikes Back',
'year' => '1980'
]];
}
}
2Để chạy di chuyển, hãy thực hiện lệnh bên dưới
'A New Hope',
'year' => '1977'
]];
App\Movie::create[[
'name' => 'The Empire Strikes Back',
'year' => '1980'
]];
}
}
3Tạo Seeder
Chúng ta phải chạy lệnh sau để tạo Seeder dành riêng cho bảng Nhân viên
'A New Hope',
'year' => '1977'
]];
App\Movie::create[[
'name' => 'The Empire Strikes Back',
'year' => '1980'
]];
}
}
4Cuối cùng, lệnh trên đã tạo ra trình gieo hạt trong cơ sở dữ liệu/hạt giống/EmployeeSeeder. tập tin php. Không có gì lạ, nếu bạn tạo ra nhiều hạt giống hơn, thì chúng cũng sẽ được giữ ở đây
'A New Hope',
'year' => '1977'
]];
App\Movie::create[[
'name' => 'The Empire Strikes Back',
'year' => '1980'
]];
}
}
5Vì vậy, chúng tôi đã định cấu hình các giá trị sau sẽ được lưu trữ trong cơ sở dữ liệu
- Tên
- điện thoại
- Phòng ban
- dob
Nếu bạn cần tạo thêm tệp trình tạo cơ sở dữ liệu, thì bạn có thể thực hiện. Để tạo trình tạo cơ sở dữ liệu vô biên, hãy sử dụng lệnh trên
Xác định các Seeder bổ sung hoặc nhiều
Hướng dẫn này giúp chúng ta làm quen với single seeder giống như việc tạo một single seeder và gọi nó là. Bây giờ, nếu bạn cần tạo nhiều seeder thì sao?
Vâng, không phải lo lắng. Bạn phải sử dụng lại lệnh seeder để tạo một seeder mới, như sau
cd laravel-database-seeder
0Sau đó, bạn phải định nghĩa MyNewSeeder bên trong lớp DatabaseSeeder và mọi lớp seeder chỉ được liên hợp ở đây từ mục đích gọi
Hãy nhớ rằng đây là bước cơ bản nhưng thông thường và nó cần được tuân theo mỗi khi bạn tạo một trình tạo mới hoặc để gọi nhiều trình tạo cơ sở dữ liệu
cd laravel-database-seeder
1Cuối cùng, sau khi viết một seeder mới, bạn có thể yêu cầu tạo lại trình tải tự động của Composer
cd laravel-database-seeder
2Để thực sự hiểu được hoạt động của ấu trùng, tôi muốn lưu ý bạn rằng bạn có thể sử dụng cụ thể tùy chọn –class để tạo lớp cần thiết, đặc biệt. Mặc dù, theo mặc định, db. lệnh seed artisan tạo lớp DatabaseSeeder
cd laravel-database-seeder
3Việc tạo cơ sở dữ liệu cũng có thể được thực hiện bằng lệnh sau.
Lệnh này chịu trách nhiệm loại bỏ tất cả các bảng và bắt đầu lại quá trình di chuyển. Chỉ sử dụng nó khi bạn muốn xây dựng lại cơ sở dữ liệu của mình.
cd laravel-database-seeder
4Chạy Seeders và Migrate
Bây giờ, chúng ta đã gần như đi đến bước cuối cùng của hướng dẫn này, toàn bộ hồi ký có thể sẽ kết thúc tại đây
Mở cơ sở dữ liệu/hạt giống/DatabaseSeeder. php định nghĩa lớp seeder cơ sở dữ liệu của bạn trong lớp DatabaseSeeder
cd laravel-database-seeder
5Cuối cùng, nếu bạn đã hoàn thành nó, hãy thực hiện lệnh được đề cập bên dưới để chạy chạy tất cả các trình gieo hạt đã xác định
cd laravel-database-seeder
6Tóm lược
Cuối cùng, hướng dẫn Laravel Database Seeder với ví dụ đã hoàn thành
Tôi hy vọng bạn phải hiểu tất cả các bước mà tôi đã chia sẻ với bạn liên quan đến cách thức hoạt động của trình tạo cơ sở dữ liệu trong laravel với ví dụ
Dù sao đi nữa, nếu bất kỳ bước nào có vẻ mơ hồ đối với bạn, thì hãy chia sẻ phản hồi với tôi. Nó sẽ giúp tôi cải thiện, cảm ơn rất nhiều nghệ nhân trước
máy đào
Tôi là Digamber, một nhà phát triển full-stack và là người đam mê thể dục. Tôi đã tạo trang web này để truyền kinh nghiệm mã hóa của mình cho các lập trình viên mới. Tôi thích viết trên JavaScript, ECMAScript, React, Angular, Vue, Laravel
Twitter GitHubBài viết đề xuất
Laravel 9 Xác thực Giao thức Internet [IPv6] Hướng dẫn Laravel 9 Nhập bản ghi trong SQL với CSV và Seeder Cách triển khai Xác thực tồn tại trong Laravel 9 Form Laravel 9 Livewire Ví dụ về Hướng dẫn tạo Slug mới Laravel 9 Tạo nhiều Slug duy nhất khi tải trang Hướng dẫn Laravel 9 Bootstrap Tags Ví dụ về hệ thống Hướng dẫn Laravel 9 Tạo