2016-03-22 13 views
0

ben düzenlemek için bu yolu varsa ve edit Rota Yama rota rota tanımlanır bile, 404 verir ve

//Designation Details for Staffs 
Route::get('designation/{staffid}', array(
    'as' => 'designation.edit', 
    'uses'=>'[email protected]')); 
Route::patch('designation/update/{staffid}', array(
    'as' => 'designation.update', 
    'uses'=>'[email protected]')); 

olarak biçim modeli ile iyi çalışıyor güncelleme var:

{!! Form::model($designation, [ 
     'method' => 'PATCH', 
     'route' => ['designation.update', $designation->staffid] 
     ]) !!} 

Ama Gönder butonuna update için tıklandığında, bu uRL var

http://localhost/hrm/public/designation/update/2 

bir nd 404'a yönlendirir. Sadece bilmene izin ver, diğer tüm yollar iyi çalışıyor. Benzer durum için, başka bir güncelleştirme yolu:

da iyi çalışıyor. TIA.

GÜNCELLEME: Denetleyici Yöntem updateDesignation

public function updateDesignation($staffid, Request $request){ 
     /* 
      ** Update for Staff's Designation Information 
     */ 
     $designation= Designation::findOrFail($staffid); 

     $input = $request->all(); 
     //dd($input); 

     $designation->fill($input)->save();  

     return view('staff.editdesignation')->with('designation',$designation)->with('staffid',$staffid); 

    } 
+0

Lütfen updateDesignation kodunu ayarlayın – BKF

+0

@BKF Sorunu güncelledim. Denetleyici yöntemini orada görebilirsiniz. –

+0

Staff.editdesignation rotasını ayarladınız mı? – BKF

cevap

1

Kullanım yerine yama koymak kullanabilirsiniz. Html formu koymak, yama veya silme seçeneklerini desteklemiyor. Yani forma gizli bir _method alanı ekleyin.

0

$designation= Designation::findOrFail($staffid); 

$staffid

bir birincil anahtar ama bir yabancı anahtar değildi benim Sorgu üzerinde bir hata oluştu. Sorgumu değiştirerek çözdüm.

$designation = Designation::where('staffid', $staffid)->firstOrFail(); 
+0

demek, evet findOrFail otomatik olarak 404 hatası veriyor. – Gokigooooks

+0

@Gokigooooks Her zaman, parametre birincil anahtarını geçerse, her zaman iyidir. –

+0

Evet ama eşleşen kayıt yok, 404 hatası atar – Gokigooooks