Слишком мало аргументов для функции App \ Http \ Controllers \ RakController :: update (), 1 передано и ожидается ровно 2 - PullRequest
1 голос
/ 30 сентября 2019

У меня ошибка, которая говорит:

Слишком мало аргументов для функции 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');
}

И это общий предварительный просмотр:
enter image description here

Что я здесь упустил, любая помощь приветствуется

Ответы [ 3 ]

0 голосов
/ 30 сентября 2019

Попробуйте 1:

Проверьте, используется ли класс должен быть Illuminate\Http\Request;

Попробуйте 2: Функция запроса помощника:

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');
}

И если это didnне работает печать func_get_args() в функции обновления для просмотра переданных вами аргументов

0 голосов
/ 30 сентября 2019

Проверьте пример вашего URL:

http://{yourdomain}/update/{your_id}

в POST ROUTE. И если {ID} не требуется, определите его как необязательный аргумент как,

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

Это решит ошибку с несколькими аргументами для метода обновления.

0 голосов
/ 30 сентября 2019

Вы можете пропустить параметр $id и получить его внутри контроллера, используя параметр $request:

public function update(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();
    return redirect ('/d_rak');
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...