【发布时间】:2020-01-03 22:01:19
【问题描述】:
SQLSTATE[HY000]: General error: 1364 Field 'id' doesn't have a default value (SQL: insert into `users` (`role_id`, `name`, `username`, `email`, `password`, `updated_at`, `created_at`) values (2, lino, lino, lino@gmail.com, $2y$10$8i2ucs2nRv.ggnRHNmiK/.QPNJ4uRNwjRZCg5D6ILUMFvyr5.qyXW, 2020-01-03 21:36:49, 2020-01-03 21:36:49))
为什么在实时服务器中显示此错误,但在 localhost 中没有错误?
protected function create(array $data)
{
return User::create([
'role_id' => 2,
'name' => $data['name'],
'username' => str_slug($data['username']),
'email' => $data['email'],
'password' => Hash::make($data['password']),
]);
}
【问题讨论】:
-
"为什么这个错误在实时服务器中显示,但在本地主机中没有错误?" -- 可能是因为你的数据库在 localhost 和服务器上的配置不同。
-
我从本地主机导入了准确的数据库。除了注册,一切正常
-
您应该验证您的数据库结构。-
userstableid列是否设置为自动增量
标签: laravel