Класс «Валидатор» не найден в Lumen

попробуйте вручную создать валидатор в Lumen. В официальной документации написано:

<?php

namespace App\Http\Controllers;
use Validator;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;

class PostController extends Controller
{
     /**
     * Store a new blog post.
     *
     * @param  Request  $request
     * @return Response
     */
     public function store(Request $request)
     {
        $validator = Validator::make($request->all(), [
            'title' => 'required|unique:posts|max:255',
            'body' => 'required',
        ]);

        if ($validator->fails()) {
            return redirect('post/create')
                        ->withErrors($validator)
                        ->withInput();
        }

        // Store the blog post...
     }
}

я написал

<?php

namespace App\Http\Controllers;
use Laravel\Lumen\Routing\Controller as BaseController,
    Validator;

class Welcome extends BaseController
{
    public function index()
    {
        $validator = Validator::make(
            ['test' =>'TestValidation'],
            ['test' => 'required|unique:posts|max:255']
        );
    }
}

но Lumen возвращает фатальную ошибку: Фатальная ошибка: класс "Валидатор" не найден в...

Я пытался сделать как в Laravel 5:

use Illuminate\Support\Facades\Validator;

но затем Lumen возвращает Неустранимая ошибка: вызов функции-члена make() для не-объекта в

Кто-нибудь знает, как использовать класс Validator в Lumen? Спасибо.


person epod    schedule 29.09.2015    source источник


Ответы (2)


Валидатор — это фасад. Фасады не включены по умолчанию в lumen.

Если вы хотите использовать фасад a, вы должны раскомментировать

$app->withFacades();

позвоните в свой bootstrap/app.php файл.

person baao    schedule 29.09.2015
comment
Я люблю тебя :* ххххх - person Shahid Karimi; 03.12.2017

Это для Lumen версии 5.3 (как показано в документах):

use Illuminate\Http\Request;

$app->post('/user', function (Request $request) {
    $this->validate($request, [
    'name' => 'required',
    'email' => 'required|email|unique:users'
 ]);

    // Store User...
});

https://lumen.laravel.com/docs/5.3/validation

person Arnold Balliu    schedule 26.12.2016