Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 函数App\Http\Controllers\RakController::update()的参数太少,传递了1个,预期正好是2个_Php_Database_Laravel - Fatal编程技术网

Php 函数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->

我有一个错误,上面写着:

函数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->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})来指定给此函数。检查您的路线规则或将其包含在您的问题中,以便人们可以回答您。您可以共享您的目标路线吗?您在哪里使用此方法?在控制器中的路由或其他方法中