在同一个函数中传递变量并调用请求,在laravel中更新post

时间:2018-05-27 10:14:09

标签: php laravel eloquent

我想更新数据库中的联系信息 我从DOM获得联系人ID,($ contactid变量),它传递给我的函数(postEditContact)。我知道,因为我尝试使用delete()函数并且它运行良好,但我尝试了许多不同的方法,不能使其用于更新联系人。 如果我使用变量$ contactid和$ request这样的postEditContact($ contactid,Request $ request)我得到的参数太少错误。如果我只传递$ contactid变量,那么我得到未定义的变量$ request错误。请帮忙

public function postEditContact($contactid, Request $request)
{
    $this->validate($request, [
        'newname' => 'required|max:140'
    ]);

    $contact = Contact::where('id', $contactid)->first();
    $contact -> name = $request['newname'];   
    $contact -> email = $request['newe_mail'];
    $contact -> phone = $request['newphone'];
    $contact -> address = $request['newaddress'];
    $contact -> other = $request['newother'];
    $contact -> isuser = false;

    $contact -> update();
    return redirect()->route('contacts');
}

1 个答案:

答案 0 :(得分:0)

问题是当我试图从一个函数传递变量并在另一个函数中使用该变量和$ request时。我不认为我能做到这一点。我做的是我将变量传递给第一个函数的视图,因为它无论如何都打开了一个视图,从该视图我将变量传递给另一个带有路径和变量的函数。它解决了这个问题。