路由的名字比较官方,按照通俗的理解可以想成是导航。 比如从古到今的饭店大部分都有跑堂的这么角色,来了顾客带领顾客去到他的包房或者餐桌这么个角色。不用想的多复杂
路由在请求中的位置如图:
路由模块存放位置项目目录下 app/Http/routes.php
Route::
可以看做是一个路由类, 底层并不是这么实现但是可以这么理解。
get
客户端请求方式, get/post/put/delete
/
这里是路由的路径规则,与其他的后端路径规则无异
function(){}
当前路由执行的匿名函数
view('welcome')
渲染页面方法, 视图模块在项目目录下resources\views
定义 welcome.blade.php
。这里需要注意必须定义后缀.blade.php
格式的视图模块。
注意:找不到的路径或者报错页面放在 resources/views/errors
中
其他路由访问需要注意, 配置伪静态来访问服务
nginx虚拟主机加入这句话 网上配置伪静态案例很多包括Apache
if (!-e $request_filename){
rewrite ^(.*)$ /index.php?s=$1 last; break;
}
带参路由
Route::get('/params/{id}/{name}', function ($id,$name) {
echo '当前参数id:'.$id.' 名称name:'.$name;
});
使用where
限制参数类型第一个位置是限制参数, 第二个位置是参数的规则
Route::get('/params/{id}/{name}', function ($id,$name) {
echo '当前参数id:'.$id.' 名称name:'.$name;
})->where('id','\d+');
路由别名
route()
传入别名参数可以获取完整的URL,如下图所示
Route::get('/Admin/User/List', [
'as'=>'UList',
'uses'=>function(){
echo '后台用户列表页面'.' , 当前页面的Url地址为:'.route('UList');
}
]);
路由组
[]
这里对路由组内请求作出筛选检测过滤等等一些操作,如果没有做不会有任何区别仅仅对路由模块做了划分
//前台
Route::group([],function (){
Route::get('/', function () {
// return view('welcome');
echo '这是首页。';
});
Route::post('/next', function () {
echo '1233333';
});
});
//后台
Route::group([],function (){
Route::get('/params/{id}.{name}', function ($id,$name) {
echo '当前参数id:'.$id.' 名称name:'.$name;
})->where('id','\d+');
Route::get('/Admin/User/List', [
'as'=>'UList',
'uses'=>function(){
echo '后台用户列表页面'.' , 当前页面的Url地址为:'.route('UList');
}
]);
});
404页面
Route::get('/404',function (){
return view('404');
});
页面路径在: resources/views/errors/404.blade.php