在我的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();
});
我有一个用户注册表。我也在routes.php
中获取表单输入值。
但是当我注册用户时出现错误。错误:
FatalErrorException in routes.php line 61:
Class 'input' not found
它是Input
而不是input
。 This commit从Input
中删除了config/app.php
外观定义,因此您必须手动将其添加到aliases
数组中,如下所示,
'Input' => Illuminate\Support\Facades\Input::class,
或者您可以根据需要直接导入Input
外观,
use Illuminate\Support\Facades\Input;
Miscall类它应该是Input
而不是input
这个干净的代码片段对我来说很好:
use Illuminate\Http\Request;
Route::post('/register',function(Request $request){
$user = new \App\User;
$user->username = $request->input('username');
$user->email = $request->input('email');
$user->password = Hash::make($request->input('username'));
$user->designation = $request->input('designation');
$user->save();
});
对于laravel <
5.2:
打开config/app.php
并将Input
类添加到aliases
:
'aliases' => [
// ...
'Input' => Illuminate\Support\Facades\Input::class,
// ...
],
对于laravel >=
5.2
将Input::
改为Request::
您可以在folder\config\app.php
中添加外观
'Input' => Illuminate\Support\Facades\Input::class,
在Laravel 5.2中,Input ::被替换为Request ::
使用
Request::
添加到Controller或任何其他类的顶部
use Illuminate\Http\Request;
首先你的问题是关于输入类的拼写,应该是输入而不是输入。并且您必须使用良好的命名空间导入该类。
use Illuminate\Support\Facades\Input;
如果你想要它叫'输入'而不是'输入',添加这个:
use Illuminate\Support\Facades\Input as input;
其次,这是一种通过route.php存储到数据库中的脏方法,并且您不处理数据验证。如果发送的参数不是您所期望的,则可能会出现SQL错误,这是由数据类型引起的。您应该使用控制器与信息交互并通过模型在控制器方法中存储。
route.php文件处理路由。它旨在建立控制器和询问路线之间的链接。
要了解控制器,中间件,模型,服务...... http://laravel.com/docs/5.1/
如果您需要更多信息,有关问题的解决方案,您可以加入社区: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');
}
}
在别名下的config / app.php中的声明: -
'Input' => Illuminate\Support\Facades\Input::class,
或者您可以根据需要直接导入输入外观,
use Illuminate\Support\Facades\Input;
要么
use Illuminate\Support\Facades\Input as input;
'Input' => Illuminate\Support\Facades\Input::class
,将其添加到App.php。
在config / app.php中将其添加到别名下: -
'Input' => Illuminate\Support\Facades\Input::class,