我刚刚开始学习 Laravel,在为测试表生成种子时遇到问题。
控制台错误说:
“未找到基表或视图:1146 表‘laravel.testms’不存在...”
我的表名为“testm” - 我不知道它为什么寻找 testms
TestmFactory.php
use Faker\Generator as Faker;
$factory->define(App\Testm::class, function (Faker $faker) {
return [
'test' => $faker->paragraph
];
});
TestmTableSeeder.php
use Illuminate\Database\Seeder;
class TestmTableSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
factory(App\Testm::class, 5)->create();
}
}
数据库播种器.php
public function run()
{
$this->call(LinksTableSeeder::class);
$this->call(TestmTableSeeder::class);
}
应用程序/Testm.php
class Testm extends Model
{
// Below line fixed my code :-)
protected $table = 'testm';
protected $fillable = [
'test'
];
}
From Laravel 文档:
按照约定,除非显式指定另一个名称,否则类的“蛇形”复数名称将用作表名称。
并且为了在模型中显式定义表名称,Testm.php
在您的情况下,您需要将以下代码添加到类中:
protected $table = 'testm';
希望这可以帮助!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)