我试图将 user_id 分配给当前用户,但它给了我这个错误
SQLSTATE[HY000]: General error: 1364 Field 'user_id' doesn't have a
default value (SQL: insert into `posts` (`updated_at`, `created_at`)
values (2017-04-27 10:29:59, 2017-04-27 10:29:59))
这是我的方法
//PostController
Post::create(request([
'body' => request('body'),
'title' => request('title'),
'user_id' => auth()->id()
]));
用这些填充物
//Post Model
protected $fillable = ['title', 'body', 'user_id']
然而这个方法可以完成工作
//PostController
auth()->user()->publish(new Post(request(['title' ,'body'])));
//Post Model
public function publish(Post $post)
{
$this->posts()->save($post);
}
any idea why this fail?
您需要更改数据库严格模式。要禁用,请按照以下步骤操作
Open config/database.php
find 'strict'
将值 true 更改为 false,然后重试
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)