You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel8添加评论回复时控制器提示参数过少错误如何解决?

错误原因

你的路由没有声明rid参数位,即使你在视图的route()方法中传入了rid参数,该参数只会被当做URL查询参数处理,不会被注入为控制器方法的第二个入参,因此控制器只接收到了自动注入的Request对象,缺少第二个必填参数触发报错。请求还未进入你写的控制器业务逻辑就被拦截,所以dd()方法不会执行。

解决步骤

  1. 修改routes/web.php的路由定义,增加{rid}路由参数占位符:
Route::post('/replycreate/{rid}', [CommentController::class, 'createReply'])->name('createreply');

如果需要避免传入非数字的无效ID,还可以给路由加参数约束:

Route::post('/replycreate/{rid}', [CommentController::class, 'createReply'])
    ->where('rid', '[0-9]+')
    ->name('createreply');
  1. 额外注意检查Reply模型的批量赋值设置,确保你要写入的字段已经加入$fillable属性,避免后续保存时报批量赋值错误:
// app/Models/Reply.php
protected $fillable = ['replyContent', 'user_name', 'comment_id'];

内容的提问来源于stack exchange,提问作者zzxczxczaa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 00:36:04