在Lumen中找不到"验证者"类

epo*_*pod 10 php validation laravel 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...
     }
}
Run Code Online (Sandbox Code Playgroud)

我写

<?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']
        );
    }
}
Run Code Online (Sandbox Code Playgroud)

但是Lumen返回致命错误: 致命错误:在'...中找不到类'Validator'

我试着在Laravel 5中做过:

use Illuminate\Support\Facades\Validator;
Run Code Online (Sandbox Code Playgroud)

但随后Lumen返回 Fatal错误:调用非对象中的成员函数make()

有人知道如何在Lumen中使用Validator类吗?谢谢.

chr*_*con 19

验证者是一个门面.在流明中默认情况下不启用外墙.

如果你想使用一个外观,你应该取消注释

$app->withFacades();
Run Code Online (Sandbox Code Playgroud)

打电话给你的bootstrap/app.php档案.