#laravel #laravel-5
#laravel #laravel-5
Вопрос:
Я получаю сообщение об ошибке Класс App Http Requests PostStore не найден
Мой код Contoller
namespace AppHttpControllers;
use AppHttpRequests;
use IlluminateHttpRequest;
use AppHttpRequestsPostStore;
class PostController extends Controller
{
public function store(PostStore $request)
{
//
return redirect()->back();
}
}
и код запроса выглядит как
namespace AppHttpRequests;
use IlluminateFoundationHttpFormRequest;
class PostStore extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
//
'title' => 'min:20|max:200|required|string',
'content' => 'min:20|max:400|required'
]
}
public function messages()
{
return [
'title.required' => ' :attribute is required',
'content.required' => ' :attribute is required'
]
}
}
Я использовал
дамп композитора-автозагрузка
Кэш PHP artisan: очистить,
композитор очищает кэш,
Но у меня это не работает Спасибо за вашу помощь
Комментарии:
1. каково имя файла этого класса запроса?
2. PostStore.php с помощью php artisan make:запросить PostStore
3. Вы намеренно пропускаете точки с запятой в конце ваших возвратов? Вместо того, чтобы иметь,
return [ ... ]
вы бы имелиreturn [ ... ];
.4. да, я так думаю, это не на международном уровне, но локально моей рукой доза не разрешена, если вы ответите, я дам вам балл, спасибо
Ответ №1:
Похоже, что вы пропустили несколько точек с запятой в конце ваших инструкций return, в результате чего класс становится неузнаваемым!
Это решит вашу проблему:
public function rules()
{
return [
//
'title' => 'min:20|max:200|required|string',
'content' => 'min:20|max:400|required'
]; // <- ADDED SEMICOLON
}
public function messages()
{
return [
'title.required' => ' :attribute is required',
'content.required' => ' :attribute is required'
]; // <- ADDED SEMICOLON
}