gpt4 book ai didi

Laravel 5 - 如何在部署应用程序后自动播种表?

转载 作者:行者123 更新时间:2023-12-02 08:19:03 24 4
gpt4 key购买 nike

我有一些数据必须在表中才能使我的应用运行,否则我会收到一条错误消息。

例如,如果您或其他任何人从 github 中提取我的应用程序,并且如果您运行 php artisan migrate 然后尝试测试该应用程序,您将收到错误消息:数据不存在或类似的东西。这是因为表中没有数据。

所以理想的解决方案是在运行之后:

 php artisan migrate

您还可以在该表中获得所需的数据。

这应该用播种机以某种方式完成,但我不知道怎么做。谁能帮我举个例子?

如何为应该进入 car_company 表的数据制作种子:

id car_company

1 大众汽车

2 奔驰

3辆奥迪

4 保时捷

有4行,我想在运行后插入它们

 php artisan db:seed

最佳答案

首先运行以下命令:

php artisan make:seeder CarCompanyTableSeeder。这将在 database\seeds 中创建类 CarCompanyTableSeeder

enter image description here

在函数 public function run() 中请添加以下代码:

public function run()
{
$data = array(
array(
'id' => 1,
'car_company' => 'Volkswagen'
),
array(
'id' => 2,
'car_company' => 'Mercedes'
),
array(
'id' => 3,
'car_company' => 'Audi'
),
array(
'id' => 4,
'car_company' => 'Porsche'
)
);

DB::table('car_company')->insert($data);
}

database\seeds中还有一个类class DatabaseSeeder extends Seeder。在类内部有一个函数run()。在此处添加以下代码:

public function run()
{
Model::unguard();

$this->call(CarCompanyTableSeeder::class);

Model::reguard();
}

现在,当您运行 php artisan db:seed 时,您想要的值将被插入其中。

关于Laravel 5 - 如何在部署应用程序后自动播种表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39180882/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com