Php 函数App\Http\Controllers\RakController::update()的参数太少,传递了1个,预期正好是2个
我有一个错误,上面写着: 函数App\Http\Controllers\RakController::update()的参数太少,传递了1个,预期正好是2个 以下是我拥有的代码:Php 函数App\Http\Controllers\RakController::update()的参数太少,传递了1个,预期正好是2个,php,database,laravel,Php,Database,Laravel,我有一个错误,上面写着: 函数App\Http\Controllers\RakController::update()的参数太少,传递了1个,预期正好是2个 以下是我拥有的代码: public function update(Request $request, $id) { $data=Rak::find($id); $data->kode_rak=$request->get('kode_rak'); $data->server=$request->
public function update(Request $request, $id)
{
$data=Rak::find($id);
$data->kode_rak=$request->get('kode_rak');
$data->server=$request->get('server');
$data->os=$request->get('os');
$data->ip=$request->get('ip');
$data->masa_berlaku=$request->get('masa_berlaku');
$data->merek=$request->get('merek');
$data->type=$request->get('type');
$data->save();
return redirect ('/d_rak');
}
这是整体预览:我在这里错过了什么,非常感谢您提供的任何帮助您可以跳过
$id
参数,并使用$request
参数将其放入控制器中:
公共功能更新(请求$Request)
{
$id=$request->id;
$data=Rak::find($id);
$data->kode_-rak=$request->get('kode_-rak');
$data->server=$request->get('server');
$data->os=$request->get('os');
$data->ip=$request->get('ip');
$data->masa_berlaku=$request->get('masa_berlaku');
$data->merek=$request->get('merek');
$data->type=$request->get('type');
$data->save();
返回重定向('/d_-rak');
}
尝试1:
检查使用的类必须是light\Http\Request代码>
请尝试2:Helper请求函数:
public function update($id)
{
$data=Rak::find($id);
$data->kode_rak = Request()->get('kode_rak');
$data->server = Request()->get('server');
$data->os = Request()->get('os');
$data->ip = Request()->get('ip');
$data->masa_berlaku = Request()->get('masa_berlaku');
$data->merek = Request()->get('merek');
$data->type = Request()->get('type');
$data->save();
return redirect('/d_rak');
}
如果它不起作用
在更新函数中打印func\u get\u args()
,查看传递的args检查URL
例如:
http://{yourdomain}/update/{your_id}
在邮路上。
如果{ID}不是必需的,那么将其定义为非必需的argument,如下所示:
public function update(Request $request, $id="")
{
$data=Rak::find($id);
$data->kode_rak=$request->get('kode_rak');
$data->server=$request->get('server');
$data->os=$request->get('os');
//your code
这将解决更新方法的几个参数错误。请尝试$data->update()
insteadshow告诉我们您的form tooThe update函数似乎在控制器中,使用$id变量,您应该有一个路由参数(比如路由中的{id})来指定给此函数。检查您的路线规则或将其包含在您的问题中,以便人们可以回答您。您可以共享您的目标路线吗?您在哪里使用此方法?在控制器中的路由或其他方法中