2017-10-04 9 views
0

ちょっとユーザーに情報を編集するための編集ページを作成していますが、このエラーが発生しています。コントローラのApp Http Controllers DoctorController :: edit()の引数1がありません

コードは次のとおり

public function edit($id) 
{ 
    $doctor = Doctor::find($id); 
    // Redirect to state list if updating state wasn't existed 
    if ($doctor == null || count($doctor) == 0) { 
     return redirect()->intended('doctor/doctorList'); 
    } 
    return view('doctor/doctorEdit', ['doctor' => $doctor]); 
} 

私のルートである:

Route::get('doctor/doctorEdit/edit','[email protected]')->name('doctor.edit'); 

私の図である。

<a href="{{ route('doctor.edit', ['id' => $doctor->id]) }}" class="btn btn-warning col-sm-3 col-xs-5 btn-margin" style="width:100px; margin-left:20px;"> 
        Update 
        </a> 

Pリース私が間違っていることを教えてください。

答えて

0

あなたのルートファイルにワイルドカード(パラメータ)を渡していません。

は、特定の医師に関連する主キーを一致させるために、あなたのルートを変更し

、それは、ユーザ名、または単にIDを指定することもできます。

Route::get('doctor/{id}/doctorEdit/edit','[email protected]')->name('doctor.edit'); 

public function edit($id) 
{ 
    $doctor = Doctor::where('id', $id)->first(); 
    // Redirect to state list if updating state wasn't existed 
    if ($doctor == null || count($doctor) == 0) { 
     return redirect()->intended('doctor/doctorList'); 
    } 
    return view('doctor/doctorEdit', ['doctor' => $doctor]); 
} 
0

あなたのルートdoesntのは、そう、あなたのルートを変更するパラメータを持っているあなたは、コントローラに適切にディレクトリ

そして、そのワイルドカードを使用するに基づいて、ワイルドカードを渡していることを確認してください。

ここからです。この

Route::get('doctor/doctorEdit/edit/{id}','[email protected]')->name('doctor.edit'); 

または多分に

Route::get('doctor/doctorEdit/edit','[email protected]')->name('doctor.edit'); 

uは同じ方法で投稿したい

Route::match(['get', 'post'], 'doctor/doctorEdit/edit/{id}','[email protected]')->name('doctor.edit'); 
関連する問題