我在 Laravel 6.6 中创建了一个数据库表,其结尾datas如下:
C:\xampp\htdocs\voiceit> php artisan make:migration create_org_datas_table
Created Migration: 2019_12_16_094613_create_org_datas_table
我尊重 Laravel ORM 表需要复数名称的规则。另外,我生成了相关的模型、控制器和资源:
C:\xampp\htdocs\voiceit> php artisan make:controller API\OrgDataController --api -m OrgData
Controller created successfully.
C:\xampp\htdocs\voiceit> php artisan make:resource OrgData
Resource created successfully.
最后我做了迁移:
C:\xampp\htdocs\voiceit> php artisan migrate
我手动检查了我的数据库,它org_datas在数据库中正确生成了表。
但是,当我尝试运行这样的简单查询时:
$orgDatas = OrgData::all();
它会产生以下错误:
“SQLSTATE [42S02]:未找到基表或视图:1146 表 'mjzsoft.org_data' 不存在(SQL:从 org_data 中选择 *)”
如果在模型中添加以下代码行,则可以找到该表:
class OrgData extends Model
{
protected $table = 'org_datas';
}
现在的问题是,这data是一个特例还是因为这个词data没有复数形式或其他什么?如果是这种情况,那么*_informations也不能工作,我需要为 Laravel 澄清表的名称!?或者我错过了一些它没有检测到正确的表名称的东西!?
哔哔one
撒科打诨
随时随地看视频慕课网APP