2016-04-14 2 views
0

Я пытаюсь взять переменную из текстового поля под названием «умение» и сбросить все, что набирается, но я получаю:проб с входом Laravel не найден

HandymanController.php линия 32: Фатальная ошибка: Class «App \ Http \ Controllers \ Input 'не найдено

Почему? Это встроенная функция, не так ли?

$searchTerm = Input::get('skill'); 
    var_dump($searchTerm); 

ответ

1

В Laravel 5.2 введен псевдоним ввода. Вы все еще можете использовать его, добавив его в свой файл config/app.php, а не делать это, самый простой способ, вероятно, использовать функцию request() помощника:

$searchTerm = request('skill'); 

Вы можете также использовать Request фасад:

use Request; 

$searchTerm = Request::input('skill'); 

Вы можете даже использовать инъекции метод:

use Illuminate\Http\Request; 

public function someControllerMethod(Request $request) 
{ 
    $searchTerm = $request->skill; 
} 

Но на мой взгляд, самый простой способ является вспомогательной функции (первые sugges ted method), поскольку вам не нужно «импортировать» что-либо.

+0

блестящее, работает, ура! –

0

Добавить use Input; в верхней части класса или использовать его как это:

$searchTerm = \Input::get('skill'); 

В качестве альтернативы можно использовать $request->input:

$searchTerm = $request->input('skill'); 
+0

Я использовал Input; и теперь я получаю Fatal error: Class 'Input' not found –

+0

Посмотрите внимательно, вы должны добавить \ before 'Input'. –

+0

Все еще не работает .. –

1

перспективе это:

composer dump-autoload

и проверьте пространство имен, поскольку Laravel 5 способствует использованию пространств имен для таких вещей, как Class, Models и Controllers.

+0

не решает это –

+0

проверить пространство имен приложений –

Смежные вопросы