2014-12-27 151 views
0

如何從嵌套資源觸發index方法? 例如,我有路線:嵌套資源路徑

Route::resource('diagrams.steps', 'DiagramStepsController'); 

我可使URL等/diagrams/1/steps/3觸發show($diagramId, $stepID)。 我想獲得屬於圖1中的所有步驟:/diagrams/1/steps

我該如何做到這一點?

+0

你所說的觸發意思? '/ diagrams/1/steps'不工作嗎? – lukasgeiter 2014-12-27 19:12:00

回答

2

路由定義你貼:

Route::resource('diagrams.steps', 'DiagramStepsController'); 

應該生成以下途徑:

+--------+-------------------------------------------------+------------------------+--------------------------------+----------------+---------------+ 
| Domain | URI            | Name     | Action       | Before Filters | After Filters | 
+--------+-------------------------------------------------+------------------------+--------------------------------+----------------+---------------+ 
|  | GET|HEAD diagrams/{diagrams}/steps    | diagrams.steps.index | [email protected] |    |    | 
|  | GET|HEAD diagrams/{diagrams}/steps/create  | diagrams.steps.create | [email protected] |    |    | 
|  | POST diagrams/{diagrams}/steps     | diagrams.steps.store | [email protected] |    |    | 
|  | GET|HEAD diagrams/{diagrams}/steps/{steps}  | diagrams.steps.show | [email protected] |    |    | 
|  | GET|HEAD diagrams/{diagrams}/steps/{steps}/edit | diagrams.steps.edit | [email protected] |    |    | 
|  | PUT diagrams/{diagrams}/steps/{steps}   | diagrams.steps.update | [email protected] |    |    | 
|  | PATCH diagrams/{diagrams}/steps/{steps}   |      | [email protected] |    |    | 
|  | DELETE diagrams/{diagrams}/steps/{steps}  | diagrams.steps.destroy | [email protected] |    |    | 
+--------+-------------------------------------------------+------------------------+--------------------------------+----------------+---------------+ 

通知的第一個途徑是diagrams/{diagrams}/steps它調用你的控制器的index方法,就是你正在請求。

+0

好的,我的代碼中的索引函數有一個錯誤。那麼如何檢索與圖表ID相匹配的那些步驟? – adamiscoding 2014-12-27 20:18:58

+0

我寫了如下的索引方法: – adamiscoding 2014-12-28 11:22:21

0
Route::resource('diagrams.steps', 'DiagramStepsController'); 

給我GET | HEAD圖/ {圖} /步驟路線。 它使用參數匹配圖ID:{圖表}調用索引方法。 所以爲了得到屬於導航圖,我有如下編寫方法的所有步驟:

public function index($id) 
{ 
    $steps = Step::where('diagram_id', '=', $id)->get(); 

    return Response::json(
      array(
       'error' => false, 
       'steps' => $steps 
      ), 
      200 
    ); 
}