2015-09-29 21 views
8

cố gắng tạo trình xác thực theo cách thủ công trong Lumen. Các tài liệu chính thức được viết:Trình xác thực lớp 'không được tìm thấy trong 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... 
    } 
} 

tôi đã viết

<?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'] 
     ); 
    } 
} 

nhưng Lumen trả về lỗi nghiêm trọng: Fatal error: Class 'Validator' không tìm thấy trong ...

Tôi có cố gắng làm như trong Laravel 5:

use Illuminate\Support\Facades\Validator; 

nhưng sau đó Lumen trả Fatal error: Call to một hàm làm thành viên() trên một tổ chức phi-đối tượng trong

ai đó biết làm thế nào để sử dụng lớp Validator trong Lumen? Cảm ơn bạn.

Trả lời

14

Trình xác thực là mặt tiền. Mặt tiền không được kích hoạt theo mặc định trong lumen.

Nếu bạn muốn sử dụng một mặt tiền, bạn nên bỏ ghi chú các cuộc gọi

$app->withFacades(); 

trong tập tin bootstrap/app.php của bạn.

+0

câu trả lời của bạn là đúng! Cảm ơn bạn! – epod

+0

Bạn được chào đón! @epod – baao

+0

Tôi yêu bạn: * xoxox –

1

này là dành cho Lumen phiên bản 5.3 (như trong các tài liệu):

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

Các vấn đề liên quan