2016-08-02 105 views
1

给下一个代码我得到这个错误,当我尝试发布到寄存器ReflectionException,类不存在

ReflectionException在Route.php行286:类 应用程序\ HTTP \请求\ ApiRegisterRequest不存在

路线

Route::group(['prefix' => 'api/v1'], function() { 
    Route::post('login', 'API\[email protected]'); 
    Route::post('register', 'API\[email protected]'); 
}); 

ApiController

namespace App\Http\Controllers\API; 
use App\Http\Controllers\Controller; 

class ApiController extends Controller 
{ 
    public function register(\App\Http\Requests\ApiRegisterRequest $request) 
    { 
     dd($request); 
    } 
} 

ApiRegisterRequest

namespace App\Http\Requests; 

use App\Http\Requests\Request; 

class ApiRegisterRequest extends Request 
{ 
    /** 
    * 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 [ 
      'first_name' => 'required:min:3', 
      'email' => 'required' 
     ]; 
    } 

    public function messages() 
    { 
     $messages = [ 
      'first_name.required' => 'Has de introducir un nombre' 
      'email.required' => 'Has de introducir un correo' 
     ]; 

     return $messages; 
    } 
} 

我在做什么错?

+0

哪里是Route.php代码?在路由段错误段中,因为不包含ApiRegisterRequest。 – Lakremon

+0

在您的作曲家中,您是否拥有“psr-4”自动载入,如果不尝试做'php artisan dump-autoload' – Maraboc

+0

“psr-4”:{ “App \\”:“app /” }, 我之前做过dump-autoload,但没有工作 – suarsenegger

回答

2

错误是由于您在ApiRegisterRequest中有语法错误而引起的。

$messages = [ 
     'first_name.required' => 'Has de introducir un nombre' 
     'email.required' => 'Has de introducir un correo' 
    ]; 

您在$ messages数组的第一个入口末尾错过了冒号。

这个替换您的消息:

$messages = [ 
     'first_name.required' => 'Has de introducir un nombre', 
     'email.required' => 'Has de introducir un correo' 
    ]; 

这应该做的伎俩

相关问题