数据库课程作业笔记 - 编写数据填充
数据库课程作业笔记 - 编写数据填充
相关参考
创建数据填充
这里不展示其他代码了,数据填充首先创建
Seeder
文件,该文件继承Seeder
这里以客户表为例
php artisan make:seeder CustomerTableSeeder
编写填充代码
<?php
use App\Models\Customer;
use Illuminate\Database\Seeder;
class CustomerTableSeeder extends Seeder
{
/**
* Run the database seeds.
*
* [@return](https://learnku.com/users/31554) void
*/
public function run()
{
$now = now()->format('Y-m-d H:i:s');
$insert = [
[Customer::NAME => 'Kathy', Customer::CITY => 'Vestal', Customer::VISITS_MADE => 2, Customer::LAST_VISIT_TIME=> '2017-11-28 10:25:32', Customer::CREATED_AT=>$now, Customer::UPDATED_AT=>$now],
[Customer::NAME => 'Brown', Customer::CITY => 'Binghamton', Customer::VISITS_MADE => 1, Customer::LAST_VISIT_TIME=> '2013-12-05 09:12:30', Customer::CREATED_AT=>$now, Customer::UPDATED_AT=>$now],
[Customer::NAME => 'Anne', Customer::CITY => 'Vestal', Customer::VISITS_MADE => 1, Customer::LAST_VISIT_TIME=> '2016-11-29 14:30:00', Customer::CREATED_AT=>$now, Customer::UPDATED_AT=>$now],
[Customer::NAME => 'Jack', Customer::CITY => 'Vestal', Customer::VISITS_MADE => 1, Customer::LAST_VISIT_TIME=> '2016-12-04 16:48:02', Customer::CREATED_AT=>$now, Customer::UPDATED_AT=>$now],
[Customer::NAME => 'Mike', Customer::CITY => 'Binghamton', Customer::VISITS_MADE => 1, Customer::LAST_VISIT_TIME=> '2016-11-30 11:52:16', Customer::CREATED_AT=>$now, Customer::UPDATED_AT=>$now],
];
Customer::query()->insert($insert);
}
}
其他的文件填充也是如此,这里使用了模型文件很方便地完成了编写
添加编写的 Seeder 文件到 DatabaseSeeder
添加之后就可以使用命令一次性填充数据了,当然还可以在新配置项目时直接迁移数据表和填充数据,具体请参考文档内容
这里已经将主键改为bigint自增类型,作业中的
c10
字符串作为主键不利于管理
<?php
use Illuminate\Database\Seeder;
class DatabaseSeeder extends Seeder
{
/**
* Seed the application's database.
*
* [@return](https://learnku.com/users/31554) void
*/
public function run()
{
// $this->call(UsersTableSeeder::class);
$this->call(CustomerTableSeeder::class);
$this->call(EmployeeTableSeeder::class);
$this->call(SupplierTableSeeder::class);
$this->call(ProductTableSeeder::class);
$this->call(PurchaseTableSeeder::class);
}
}
执行数据填充
php artisan seed
接下来我们要编写路由
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: