流明定义表名不起作用

时间:2018-03-07 08:11:20

标签: laravel lumen

我有一个人们使用的数据库。所以碰巧我更改了类的名称,但表调用相同。所以我用的是:

class Device extends Model
{
    public $timestamps = false;

    protected $table = 'fota_devices';
}

但我收到错误:

  

SQLSTATE [42S02]:未找到基表或视图:1146表' database-fota.devices'不存在(SQL:从devices中选择count(*)作为聚合......)

看起来表名不会被分配。 我尝试php artisan cache:clearcomposer dump-autoload。 仍然无效。

编辑:控制器代码

class DeviceController extends Controller
{
public function store(Request $request) {
    $i = 1;
    $data_array = json_decode($request->data,true);
    foreach ($data_array as $data) {
        $validator =Validator ::make($data,[
            ..
            ]
        );

        if (! $validator->fails()) {
            $device = new Device;
            $device->create([
            ...
            ]);
            $response[$i]['status'] = "Success";
        }
        else {
            $response[$i]['status'] = "Failed";
            $response[$i]["errors"] = $validator->errors()->all();
        }
        $response[$i]['data'] = $data;
        $i++;
    }
    return new Response(200);
}
}

1 个答案:

答案 0 :(得分:1)

在表名中检查模型并且表名中的MySQL数据库相同或不同。因为表格名称中的模型如下所示,每当运行查询表名称时,如下所示是不同的。

try-except

两张桌子上方都不同。

您的两个表名都是不同的 fota_devices 设备