2014-05-08 19 views
6

Tôi đã làm theo hướng dẫn here về xây dựng dịch vụ xác thực cho laravel. Tôi đang gặp sự cố khi cố gắng gọi trình xác thực từ một trong các bộ điều khiển của mình. Tôi nhìn thấy những lỗi:không thể sử dụng lớp học vì nó không phải là đặc điểm

validController cannot use Portal\Service\Validation\Laravel\AppInstancesValidator - it is not a trait

đây là bộ điều khiển của tôi:

class validController extends BaseController { 

    use \Portal\Service\Validation\Laravel\AppInstancesValidator; 

    public function validateInstance() { 
     $post = Input::all(); 

     $instVal = new AppInstancesValidator(App::make('validator')); 

     return $instVal->with($post)->passes(); 
    } 

} 

và validator của tôi:

namespace Portal\Service\Validation\Laravel; 

use Portal\Service\Validation\ValidableInterface; 

class AppInstancesValidator extends LaravelValidator implements ValidableInterface { 


    protected $rules = array(
    'app_name' => 'required', 
    'app_instance_name' => 'required', 
    'app_instance_ip' => 'required|ip' 
); 

} 

Trả lời

16

Hãy thử đặt use trước class khai:

<?php // namespace Portal\Controllers; 

use \Portal\Service\Validation\Laravel\AppInstancesValidator; 

class validController extends BaseController { 

    public function validateInstance() {} 

} 
1

Tuyên bố 'sử dụng' của bạn phải ở trên định nghĩa lớp của validController

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