laravel 5:未find类“input”

在我的routes.php文件中我有:

 Route::get('/', function () { return view('login'); }); Route::get('/index', function(){ return view('index'); }); Route::get('/register', function(){ return view('register'); }); Route::post('/register',function(){ $user = new \App\User; $user->username = input::get('username'); $user->email = input::get('email'); $user->password = Hash::make(input::get('username')); $user->designation = input::get('designation'); $user->save(); }); 

我有一个用户registry单。 我也采取了routes.php的表单input值。

但是,当我注册用户时出现错误。 错误:

 FatalErrorException in routes.php line 61: Class 'input' not found 

它是Input而不是input 。 这个提交从config/app.php删除了Input外观定义,因此你必须手动添加到下面的aliases数组中,

 'Input' => Illuminate\Support\Facades\Input::class, 

或者,您可以根据需要直接导入Input外观,

 use Illuminate\Support\Facades\Input; 

您可以在您的folder\config\app.php添加一个外观

 'Input' => Illuminate\Support\Facades\Input::class, 

对于laravel < 5.2

打开config/app.php并将Input类添加到aliases

 'aliases' => [ // ... 'Input' => Illuminate\Support\Facades\Input::class, // ... ], 

对于laravel >= 5.2

Input::更改为Request::

在Laravel 5.2 Input ::被replace为Request ::

所以,你需要input的东西而不是使用

 Input:: 

使用

 Request:: 

如果您遇到错误,请将其添加到文件的顶部

 use Request; 

如果你已经有这条线:

 use Illuminate\Http\Request; 

将其删除是因为在一个文件中不能有两个同名的类

首先你的问题是关于input类的拼写,应该是input而不是input。 而且你必须用良好的命名空间导入类。

 use Illuminate\Support\Facades\Input; 

如果你想把它称为“input”而不是“input”,添加这个:

 use Illuminate\Support\Facades\Input as input; 

其次,通过route.php存储到数据库是一种肮脏的方式,而且你没有处理数据validation。 如果发送的参数不是您所期望的,那么可能会出现一个SQL错误,其由数据types引起。 您应该使用控制器与信息进行交互,并通过控制器方法中的模型进行存储。

route.php文件处理路由。 它被devise成使得控制器和所要求的路线之间的链接。

了解控制器,中间件,模型,服务… http://laravel.com/docs/5.1/

如果您需要更多的信息,可以join社区的问题解决scheme: https : //laracasts.com/

问候。

如果您使用Laravel 5.2版查看: https ://laravel.com/docs/5.2/requests#accessing-the-request

 use Illuminate\Http\Request;//Access able for All requests ... class myController extends Controller{ public function myfunction(Request $request){ $name = $request->input('username'); } } 

'Input' => Illuminate\Support\Facades\Input::class ,将其添加到App.php。