如何提供Laravel路线参数的选择

3 php routes laravel

我想要完成的是,我有一条路由,该路由接受名为的参数,type并且现在接受任何值。但我想提供选择以接受来自的值,如果匹配该路由有效,否则它将引发“未找到”错误。

选择是:

  1. 转推
  2. 喜爱
  3. 鸣叫

码:

Route::get('/activity/{type}/status','ActivitiesController@status');
Run Code Online (Sandbox Code Playgroud)

ActivitiesController.php

class ActivitiesController extends Controller
{
    public function status($type, Request $request)
    {
        return $request->all();
    }
}
Run Code Online (Sandbox Code Playgroud)

Fil*_*ski 6

您可以使用正则表达式约束,例如:

Route::get('/activity/{type}/status','ActivitiesController@status')
    ->where('type', '(retweet|favorite|tweet)');
Run Code Online (Sandbox Code Playgroud)