我正在使用 Laravel 5.4。
当我第一次创建项目时,我进行了迁移和播种,一切都工作正常。
现在我删除了数据库并想再次重做迁移和播种,迁移有效,但播种器不起作用。
当我输入此命令时:
php artisan db:seed
我得到的结果是:
Seeding: xxxTableSeeder
没有错误,没有结果是种子。我应该有 4 张桌子需要播种,但没有一个被播种。
我试过了
composer dump-autoload
但效果不佳。
DatabaseSeeder.php
use Illuminate\Database\Seeder;
class DatabaseSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
$this->call(ATableSeeder::class);
$this->call(BTableSeeder::class);
$this->call(CTableSeeder::class);
$this->call(DTableSeeder::class);
}
}
ATableSeeder.php
use Illuminate\Database\Seeder;
class ATableSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
DB::table('A')->insert([
'username' => '',
'firstname' => '',
'lastname' => '',
'email' => '',
'contact' => '',
'password' =>,
'created_at' => date('Y-m-d H:i:s'),
'updated_at' => date('Y-m-d H:i:s'),
]);
}
}
知道为什么吗?
是
timezone
中的“config/app.php
”导致了问题。当我第一次使用默认时区“UTC”进行迁移时,一切正常。然后我将时区更改为“UTC+8”,并且created_at和updated_at也工作正常。那么问题来了。我再次使用时区“UTC+8”进行迁移,然后停留在播种部分。
所以现在我将时区更改为“Asia/Kuala_Lumpur”,一切都工作得很好!
谢谢大家!
你可以尝试运行
php artisan migrate:refresh --seed
尝试在控制台中运行它:
php artisan dump
只是“转储”,没有自动加载。
对我有用!