how to apply validation from "laravel form request" with post method only

Viewed 15

i'm using match in rout

Route::match(['get', 'post'], 'login', 'login')->name('adminLogin');

i want to use laravel form request when the request is post only

my controller:

    public function login(LoginRequest $request)
{
    if ($request->isMethod('post')) {
        $data = $request->all();

        if (Auth::guard('admin')->attempt(
            [
                'email' => $data['email'], 
                'password' => $data['password'],
                'status' => 1,
            ])) 
        {
            return redirect( route('adminDashboard'));
        }
        else{
            return redirect()->back()->with('error_message', 'Invalid Email Or Password');
        }
    }
    return view('admin.admin views.login');
}

my LoginRequest:

class LoginRequest extends FormRequest

{

public function authorize()
{
    return true;
}

public function rules()
{
    return [
        'email' => 'required|email|max:255',
        'password' => 'required',
    ];
}

public function messages()
{
    return [
        'email.required' => 'Email is required!',
        'email.email' => 'Valid email is required!',
        'password.required' => 'Password is required!',
    ];
}

}

The problem is when I open the form the validation is applied to get the page and reload it over and over because the email and password are empty so how can i apply the form request when method is post only

0 Answers
Related