2014-11-03 132 views
1

在求職門戶網站工作,所以我到了僱主需要編輯他們發佈的工作的一個點,在頁面加載它給了我一個錯誤Route [employers/job/save/Mw==] not defined,請我需要幫助我的截止日期是從現在起3小時!PHP路由未定義laravel

這裏是我的代碼:

路線:

//Route for Employer's specified Job Editting -> To get ID as argv 
Route::get('employers/job/edit/{id}', '[email protected]'); 

//Route for Employer's to save specified Job after Editting -> To get ID as argv 
Route::post('/employers/job/save/{id}', [ 
    'as' => 'saveJob', 
    'uses' => '[email protected]' 
]); 

查看:

{{ Form::open(['action'=>'employers/job/save/'.base64_encode($jobData->id),'class'=>'full-job-form', 'id'=>'jobForm','role'=>'form']) }} 
    <div class="form-group col-lg-12 col-sm-12 col-md-12"> 
     <label class="sr-only" for="">Job Title</label> 
     <input type="text" class="form-control" 
      name="job_title" placeholder="Job Title" 
      value="{{ $jobData->job_title }}"> 
     <span class="help-block">Eg. Marketing Manager</span> 
    </div> 
+0

你的'僱主/工作/保存/ {id}'路線有一個'/'前綴 - 也許嘗試刪除? – alexrussell 2014-11-03 09:08:44

+0

哦,我也不認爲你可以通過指定整個事物來形成參數化路線 - 你可以這樣做(使用你的命名路線):'{{Form :: open(['route'=> ['saveJob' ,base64_encode($ jobData-> id)],'class'=>'form-group'/ * etc. * /])' – alexrussell 2014-11-03 09:13:07

+0

@alexrussell刪除了前綴,結果仍然相同,謝謝 – 2014-11-03 09:16:54

回答

1

你的問題是,你正在使用的action參數爲您Form::open()電話。這預計,控制器方法的名稱(例如,{{ Form::open(['action' => '[email protected]']) }}如果你要鏈接到預先生成的URL使用url參數:

{{ Form::open(['url' => 'employers/job/save/'.base64_encode($jobData->id)]) }} 

這就是說,這是不是最好的做法,因爲,如果你改變路由系統,你現在必須改變所有這些硬編碼的URL,因此,你應該依靠命名路由或控制器動作。

現在,你的路線已經被命名爲('as' => 'saveJob'),所以你其實應該使用Form::open()route參數:

{{ Form::open(['route' => ['saveJob', base64_encode($jobData->id)]]) }} 

或者,你可以使用action參數爲你正在嘗試做的(雖然是錯誤地):

{{ Form::open(['action' => ['[email protected]', base64_encode($jobData->id)]]) }} 

更多信息請參見the docs on forms


而且,@TheShiftExchange說,它是一個有點奇怪使用基本64位編碼的ID是,爲什麼不直接使用原始ID?

+0

感謝很多已修復錯誤,現在我有另一個問題 – 2014-11-03 09:38:52

+0

非常感謝@alexrusell,我真的很感激! – 2014-11-03 13:27:19

+0

沒問題 - 如果它回答了您的問題,您應該將其標記爲答案,以便其他人在未來發現問題時知道它的工作原理。 – alexrussell 2014-11-03 15:07:13