在Laravel5.2中,我想将所有未定义的url路由到一个特定的控制器。
我正在开发类似CMS的功能,我想要这个东西。
Route::get('profile', 'Controller@profile');
Route::get('{any}', 'Controller@page');
所以url喜欢
www.domain.com/post/po-t/some/thing
www.domain。com/profile
所以第一个url应该重定向到页面函数,第二个url应该重定向到配置文件函数
基本上,我想要一些关于N-number或参数的想法,因为在页面中,它可以是任意数量的参数,如“www.domain.com/post/po-t/some/thing”
使用中间件。
在handle方法中,您可以访问$request
对象。当找不到路由时,重定向到备用路由。有关获取当前url的选项,请参见此问题
编辑:一个实现可以在Laracast论坛中找到。海报想要保护管理路线:
public function handle($request, Closure $next)
{
$routeName = Route::currentRouteName();
// isAdminName would be a quick check. For example,
// you can check if the string starts with 'admin.'
if ($this->isAdminName($routeName))
{
// If so, he's already accessing an admin path,
// Just send him on his merry way.
return $next($request);
}
// Otherwise, get the admin route name based on the current route name.
$adminRouteName = 'admin.' . $routeName;
// If that route exists, redirect him there.
if (Route::has($adminRouteName))
{
return redirect()->route($adminRouteName);
}
// Otherwise, redirect him to the admin home page.
return redirect('/admin');
}
未定义的路由生成404 HTTP状态。您可以在资源/视图/错误
上创建一个404.blade.php
页面,放置您想要显示的任何视图。每当发生404错误时,它会将您重定向到该页面。你不需要做其他任何事情,Laravel会在幕后处理剩下的事情。
路线
e::获取({any},Controller@page);
只在一个网址工作
www.domain。com/post
如果你想有更多的选择,你必须做另一条路线,比如
Route::get({any}/{any1}','Controller@page');
这将工作的两个选项像这个回调
www.domain.com/post/asdfgd
自定义路由 easySwoole支持路由拦截。其路由利用fastRoute实现,因此其路由规则与其保持一致,该组件的详细文档请参考 GitHub文档 路由定义 若需要再easySwoole使用路由拦截功能,请在应用目录(默认为App)下,建立Router类,井继承Core\AbstractInterface\AbstractRouter实现addRouter方法,如果在类UNIX系统下请严格注意文
当我在web.php中定义了路由时,我在使用Laravel时遇到了一个路由未定义的错误,如下所示: 我正在从下面的代码重定向到路由 auth()代码可以工作,但当调用重定向时,我得到错误'route[home]not defined'。有没有人知道我怎么解决这个错误。任何帮助都会很好
我刚刚遵循了一个教程,在web.php中调用控制器函数所需的唯一代码是: 这适用于创建项目时已经存在的所有功能(编辑,更新,销毁,...)现在我需要做一个第二个更新函数(up投票)。但是当在控制器中创建一个新函数并路由到它时,我会得到以下错误: 未定义路由[articles.upvote]。(视图:D:\school\web backend\oplosingen\hackernews\resour
在我的Laravel-5.8项目中,我有一个控制器: 视图刀片是: 服务\离开\请求\所有离开。刀身 路由\网络。php 当我单击此路线时: 我得到了这个错误: 未定义路由[service.leave\u requests.allLeaves]。 我如何解决它。 谢谢你
今天第一次尝试和Laravel一起玩。我得到以下错误时,我试图访问: 无效参数异常 未定义路线[仪表板]。 路线/web.php 登录控制器。php
我正在学习拉威尔,我正在尝试使用拉威尔护照。当我尝试创建一个新用户时,我发现错误404 not found。 注册控制器。php 应用程序/Http/控制器/认证 我的api控制器也有这个路径 应用程序/Http/控制器/Api api中的路由。php 注册控制器 失眠测试注册 我知道我没有传递任何注册值。 我测试过127.0.0.1:8000/create 我已经测试了127.0.0.1:800