2017-08-13 11 views
1

複数の価格レベル(bronze,silverおよびgold)のルートが必要です。現在、私は持っている:複数のオプションに同じルートを使用する方法(Laravel 5)

Route::get('/{level}', [ 'as' => 'pricing', 'uses' => '[email protected]']); 

しかし、これは私はそれだけで一致して作ることができるか、何も一致します。このように私のコントローラに値を読みながらbronzesilverまたはgoldを:

public function pricing($level) { 
    $data['level'] = $level; 
    return View::make('pages.pricing', $data); 
} 

答えて

3

私は考えswitch-caseステートメント(またはif/else)を使用して関数内でこれを処理することをお勧めします。あなたが書くことができるしかし

public function pricing() { 
    switch ($level) { 
     case 'silver': 
      // do something 
      break; 
     case 'bronze': 
      // do something 
      break; 
     case 'gold': 
      // do something 
      break; 
     default: 
      throw new \Exception('not one of bronze. silver or gold'); 
    } 
} 

Route::get('/{level}', [ 'as' => 'pricing', 'uses' => '[email protected]'])->where('level', '(bronze|silver|gold)'); 
関連する問題