Laravel请求类反射异常不存在



我在控制器的存储函数中使用名为 RolesRequest 的请求类时遇到错误,我的控制器位于控制器下的管理员文件夹中。当我将名称更改为 RoleRequest 时,我仍然收到相同的错误,我不知道为什么,我尝试进行作曲家转储自动加载,但这无济于事,我仍然收到相同的错误。我想我正在使用 laravel 5.5.4

错误信息:

Class AppHttpRequestsRolesRequest does not exist", exception: "ReflectionException"

//控制器

<?php
namespace AppHttpControllersAdmin;
use AppRole;
use AppHttpControllersController;
use AppHttpRequestsRolesRequest;
use IlluminateHttpRequest;
class RolesController extends Controller
{
public function __construct()
{
$this->middleware('auth');
}
/**
* Display a listing of the resource.
*
* @return IlluminateHttpResponse
*/
public function index()
{
return view('admin.roles');
}
/**
* Store a newly created resource in storage.
*
* @param  IlluminateHttpRequest  $request
* @return IlluminateHttpResponse
*/
public function store(RolesRequest $request)
{
dd('hit');
}
}

角色请求类

<?php
namespace AppHttpRequests;
use IlluminateFoundationHttpFormRequest;
class RolesRequest extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return Auth::user()->hasRole('Admin');
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
switch($this->method())
{
case 'GET':
case 'DELETE':
{
return [];
}
case 'POST':
{
$unique = [
'name'      => 'required|min:3|max:30|unique:roles,name',
];
break;
}
case 'PUT':
case 'PATCH':
{
$unique = [
'name'     => 'required|min:3|max:30|unique:roles,name,'. $this->id
];
break;            
}
default:break;
}      
$rules = [
'display_name' => 'required|min:4|max:50',
'description'  => 'required|min:10|max:100'
]  
return $unique + $rules;
}
}

这是发生超过 1 个错误的有趣时刻之一。您看到第二个错误。 第一个错误是解析器在您尝试使用的类中出现语法错误时失败。它正在尝试加载该文件并失败,因此该文件永远不会加载,因此找不到该类(第二个错误(。

此处显示的错误可能是错误页面中的 (2/2(。检查错误日志,查看它是否在您看到的"类不存在"错误之前显示错误。

RolesRequest文件在return之前有一个语法错误。数组定义语句末尾没有分号。

最新更新