フォームリクエストとはなにか?公式のフォームリクエスト作成を見てみましょう。
https://readouble.com/laravel/5.7/ja/validation.html
フォームリクエストはバリデーションロジックを含んだカスタムリクエストクラス。フォームリクエストクラスを作成するには、make:request Artisan CLIコマンドを使用する。
生成されたクラスは、app/Http/Request ディレクトリへ設置される。
ふーん

とりあえず、やってみましょう。
1. make:requestでフォームリクエストクラスを作成
CompanyRequestを作ってみたいと思います。
[vagrant@localhost zeus]$ php artisan make:request CompanyRequest Request created successfully.
app/Http のディレクトリに、Reqeust/CompanyReqeust.phpが生成されているのがわかります。

ファイルの中身を見てみると、authorizeとrulesメソッドが作られています。
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class CompanyRequest extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return false;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
//
];
}
}
2.生成されたクラス内のrules()の中身を編集
バリデーションを記述します。
public function rules()
{
return [
'company_name' => 'required',
'agent_name' => 'required',
];
}
3.コントローラーでフォームリクエストを呼び込む
use App\Http\Requests\CompanyRequest; を追加
public function confirm(Request $request) を、public function confirm(CompanyRequest $request)に変更する
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Company;
use App\Agent_mst;
use App\Http\Requests\CompanyRequest;
class CompanyConfirmController extends Controller
{
public function confirm(CompanyRequest $request){
// $validatedData = $request->validate([
// 'company_name' => 'required',
// 'agent_name' => 'required',
// ]);
$confirm = new Company($request->all());
return view('companyconfirm', compact('confirm'));
}
}
フォームリクエスト側でバリデーションができるようになりました。

やったーーーー^^
