【发布时间】:2021-07-31 23:03:17
【问题描述】:
我有一个 Lumen 应用程序。 我刚刚使用此迁移文件创建了一个新的 TillSoftware 模型
Schema::create('till_softwares', function (Blueprint $table) {
$table->bigIncrements('id');
$table->string("name", 120);
$table->timestamps();
});
但是当我只是运行这样一个简单的请求时
$softwareList = TillSoftware::all();
我收到一个错误提示
Next Illuminate\Database\QueryException: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'database.till_software' doesn't exist
它似乎没有在表名末尾添加通常的额外 s 并尝试向till_software而不是till_softwares发出请求。 我有 20 多个其他模型运行不正常,据我所知,软件的复数形式是软件。
我在这里遗漏了什么明显的东西吗? 我仍然可以添加一个额外的
protected $table = 'till_softwares';
在我的模型上,但我更愿意了解我做错了什么。
感谢您的帮助。
【问题讨论】:
-
您是否正确配置了数据库名称?
-
是的,我做到了。该应用程序中的所有其他控制器都运行良好。
-
由于“软件”不可数,Laravel 寻找“till_software”。
-
不可数是什么意思?我可以有很多软件。但我想你可能是对的我认为这里可能有些奇怪但我不明白为什么我不能拥有多个软件。
-
@Fabrice 我没有制定英语规则。