Laravel Create方法替代写法:如何用Post::create实现关联用户创建文章
实现方案
你只需要在Post::create的参数数组中手动补充外键user_id,赋值为当前登录用户的ID即可,两种写法最终生成的数据库记录完全一致,实现代码如下:
Post::create([ 'body' => $request->body, 'user_id' => $request->user()->id, ]);
如果你习惯用auth辅助函数,也可以写成'user_id' => auth()->id(),效果完全相同。
注意事项
- 请先确认
Post模型的$fillable属性中已经加入user_id字段,否则会触发Laravel的批量赋值保护报错。
内容的提问来源于stack exchange,提问作者Ginz77
相关产品推荐
相关产品推荐

