laravel 5: класс '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 AppUser;
$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
791   11  

11 ответов:

это Input, а не input. этот коммит удалены Input определение фасада от config/app.php следовательно, вы должны вручную добавить, что в 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:: заменяется на Request::

так где же вам нужно ввести что-то вместо использования

Input:: 

использовать

Request::

и если вы получаете ошибку что-то о "не следует использовать статически" просто добавьте это в верхней части файла

use Request;

если у вас уже есть эта строка:

use Illuminate\Http\Request;

удалить его, потому что вы не можете иметь два класса с одинаковым именем в одном файле

во-первых, ваша проблема заключается в написании входного класса, должен быть введен вместо ввода. И вы должны импортировать класс с хорошим пространства.

use Illuminate\Support\Facades\Input;

Если вы хотите, чтобы он назывался "вход", а не "Вход", добавьте это :

use Illuminate\Support\Facades\Input as input;

во-вторых, это грязный способ хранения в базе данных через маршрут.РНР, и вы не обрабатываете проверку данных. Если отправленный параметр не соответствует вашим ожиданиям, возможно, появится ошибка SQL, вызванная типом данных. Вы следует использовать контроллер для взаимодействия с информацией и хранения через модель в методе контроллера.

маршрут.файл 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');
   }
 }

'Input' => Illuminate\Support\Facades\Input::class добавить его в приложение.РНР.

объявление в config / app.PHP под псевдонимами:-

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

или вы можете импортировать входной фасад непосредственно по мере необходимости,

use Illuminate\Support\Facades\Input;

или

use Illuminate\Support\Facades\Input as input;

добавьте это в config / app.PHP под псевдонимами:-

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

этот код прекрасно работает для меня:

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();

});

ошибка класса он должен быть 'Input' не 'input'

Comments

    Ничего не найдено.