Валидирую инпут с помощью специальных классов Laravel, которые создаются с помощью make:request.
Допустим есть такой класс:
<?php
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class BlaBla extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
$comment = Comment::find($this->route('comment'));
return $comment && $this->user()->can('update', $comment);
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
];
}
}
Как вы видите, в методе authorize() делаем запрос в БД и проверяем наличие этой модели. Но потом то же самое делаем в контроллере (получаем модель), это ведь 2 одинаковых запроса, что не очень правильно. Как можно передать модель в контроллер из этого класса?