Laravel 如果没有命中路由,则在控制器中运行

Laravel function in controller if no route is hit

我在 Laravel 5 中遇到了一个问题。

问题:如果没有激活其他功能,是否可以在 Laravel 控制器中使用默认功能?

解释:

在路线中我有这个:

Route::controllers([
    'auth' => 'Auth\AuthController',
    'password' => 'Auth\PasswordController',
    '/projects' => 'ProjectController'
]);

通过这样做,我可以调用 ProjectController 中的函数,如 getIndex 或 postCreate。我想要以下内容 /projects/create、/projects/edit/{id} 等 AND /projects/{slug} <- 项目名称。以前,当我单独设置所有路线时,我可以将 /projects/{slug} 放在底部,它最后会检查它。

我想到了一个解决方案:遍历所有函数,如果执行了 none 个函数,则执行默认函数(对于 /projects/{slug})

我该怎么做?如果需要更多代码,请询问! :)

我想你可能正在寻找 missingMethod:

public function missingMethod($parameters = array())
{
    // code goes here
}

Laravel Documentation 阅读更多内容。