我想要做的是构建一个具有查询参数的laravel axios路由,即
示例请求如下所示
axios.get("/user-management/permissions?role=" + this.role)所以这头母牛
localhost:8000/user-management/permissions?role=admin"//role value changes现在被困在了在拉拉航线上设置实际路线。
我有以下几点
Route::get('permissions/{role}', "PermissionsController@PermissionRole");THe上面的路由绝不是executed.How,我是否要设置我的laravel路由以具有查询字符串参数?
发布于 2017-10-10 15:50:54
我想你误解了:
路由Route::get('permissions/{role}', "PermissionsController@PermissionRole");将响应表单/user-management/permissions/admin的请求。
您不需要指定预期的查询字符串。你需要有这样的路线:
Route::get('permissions', "PermissionsController@PermissionRole");然后在你的控制器里:
function PermissionRole(Request $request) {
$role= $request->get("role"); //admin ?
}如果要将角色添加为URL的一部分,可以:
Route::get('permissions/{role}', "PermissionsController@PermissionRole");然后可以访问操作中的角色:
function PermissionRole(Request $request, $role) {
//$role variable name matches the route name
}但是,也可以通过使用验证来强制执行:
function PermissionRole(Request $request) {
$this->validate($request->all(), [
"role" => "required|in:admin,user" //example
]);
}发布于 2017-10-10 15:54:02
路线:
Route::get('permissions/{role}', "PermissionsController@PermissionRole");永远不会执行,因为您应该有如下链接:
localhost:8000/user-management/permissions/admin //admin is rolehttps://stackoverflow.com/questions/46670847
复制相似问题