簡體   English   中英

如何從刀片 laravel 調用 controller 更新方法?

[英]How to call controller update method from blade laravel?

form method="put" action="{{URL::action('siteController@update')}}" accept-charset="UTF-8"></form>
Route::post('site/update/{id}', 'siteController@update');
 public function update(Request $request, $id)
    {
        //

            $this->validate($request,[
            'Name'          => 'required',
            'Description'   => 'required',
            'Status'        => 'required'           
            ]);
            $Data               = site::find($id);
            $Data->Name         = $request->Name;
            $Data->Description  = $request->Description;
            $Data->Status       = $request->Status;
            if($Data->save())                   
            {
                return $this->index();
            }else{
                return redirect()->back()->withErrors($errors,$this->errorBag());
            }
    }

通過為您的路線添加名稱,例如

Route::post('site/update/{id}', 'siteController@update')->name('site-update');

它允許您在完全不知道的情況下生成它的 URL

<form method="post" action="{{ route('site-update', compact('id')) }}">
@csrf
add your form field here and use button type submit
</form>

即使您決定更改 URL,只要名稱保持不變, route助手也不會在意(它只是一個別名)

嘗試這個,

<form method="post" action="{{ url('site/update/', ['id' => $id]) }}">
@csrf
add your form field here and use button type submit
</form>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM