Abhijit Mali
Abhijit Mali

Reputation: 132

Error: request class does not exist in laravel 5.5

i have created the custom request class for validation .but it showing me request class doesn't exist. i have created request class using artisan command.

php artisan make:request JobDetailRequest

this is my request class

namespace App\Http\Requests;

use Illuminate\Foundation\Http\FormRequest;

class JobDetailRequest 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 [
        'jobtitle' => 'bail|required|max:100',
        'jobdescription' => 'required',
        'experange' => 'required',
        'qualification' => 'required',
        'joblocation' => 'required',
    ];
}

 public function messages()
{
    return [
        'jobtitle.required'=>'Job title field required',
        'jobdescription.required'=>'Job description field required',
        'experange.required'=>'experience field required',
        'qualification.required'=>'Qualification required',
        'joblocation.required'=>'job location required'
    ];
} 

this is my controller where i m using custom request for validation

namespace App\Http\Controllers\admin;

use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\Http\Requests\JobDetailRequest;
use App\job_detail;



class jobDetailController extends Controller
{
//
public function __construct()
{
}

public function index()
{
    return view('admin.job_details');
}

public function store(JobDetailRequest $request)
{


    $jobTitle=$request->jobtitle;
    $jobDesc=$request->jobdescription;
    $exp=$request->experange;
    $qualf=$request->qualification;
    $loc=$request->joblocation;

    $jobdetails=new job_detail;
    $jobdetails->title=$jobTitle;
    $jobdetails->desc=$jobDesc;
    $jobdetails->exp=$exp;
    $jobdetails->qualification=$qualf;
    $jobdetails->location=$loc;
    $jobdetails->save();
    return back()->with('status','Your Job details saved successfully');

}

}

i also tried composer dump-autoload.but its not working.

Upvotes: 2

Views: 4290

Answers (3)

Ben
Ben

Reputation: 4371

I had a similar error in Laravel 5.6. It turned out I had a error (a missing bracket) in the custom Http Request file. Rather than showing an error the file simply wasn't loading.

Once I fixed the error in the file, the class was loaded and the error fixed.

I hope this helps anyone who comes across this in future.

Upvotes: 7

Irvin Jefferson
Irvin Jefferson

Reputation: 17

namespace App\Http\Requests;

use Illuminate\Foundation\Http\FormRequest;

class JobDetailRequest extends FormRequest {

    public function authorize() {
        return false;
    }

    public function rules() {
        return [
            'jobtitle' => 'bail|required|max:100',
            'jobdescription' => 'required',
            'experange' => 'required',
            'qualification' => 'required',
            'joblocation' => 'required',
        ];
    }

    public function messages() {
        return [
            'jobtitle.required'=>'Job title field required',
            'jobdescription.required'=>'Job description field required',
            'experange.required'=>'experience field required',
            'qualification.required'=>'Qualification required',
            'joblocation.required'=>'job location required'
        ];
    }

}

Maybe you are missing a " { " and " } " in your JobDetailRequest class. Please try this instead.

Upvotes: 0

Niket Joshi
Niket Joshi

Reputation: 748

please add this in JobDetailRequest

  use Illuminate\Http\Request as BaseRequest;

use this link Link-1 and Link-2

Thank You

Upvotes: 0

Related Questions