Classe di richiesta di convalida non trovata in Laravel

Aug 24 2020

Ricevo errore Class App\Http\Requests\PostStore Not Found

Il mio codice del controllore

namespace App\Http\Controllers;
use App\Http\Requests;
use Illuminate\Http\Request;
use App\Http\Requests\PostStore;
class PostController extends Controller
{

 public function store(PostStore $request)
{
    //
    return redirect()->back();
}
}

e il codice della richiesta sembra

namespace App\Http\Requests;

use Illuminate\Foundation\Http\FormRequest;

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'
    ]
}
}

ho usato

compositore dump-caricamento automatico

Cache artigianale PHP: cancella,

compositore clear-cache,

Ma per me non funziona. Grazie per il tuo aiuto

Risposte

3 ChewySalmon Aug 24 2020 at 08:30

Sembra che tu abbia perso alcuni punti e virgola alla fine delle tue istruzioni di reso, rendendo la classe irriconoscibile!

Questo risolverà il tuo problema:

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
}