2016-01-13 3 views
6

Я новичок в структуре Laravel и теперь сталкиваюсь с проблемой при попытке обновить информацию о зарегистрированных пользователях.Laravel Request :: input Call to undefined method

Маршрут:

Route::post('/user/{id}', function (Request $request, $id) { 
    return App\Http\Controllers\UsersController::update($request, $id); 
}); 

public static function update($request, $id) 
{ 
    $user = User::find($id); 
    $user->name = $request->input('name'); 
    ... 
    $user->save(); 
    ... 
} 

Ошибка:

FatalErrorException in UsersController.php line 24: Call to undefined method Illuminate\Support\Facades\Request::input()

ответ

11

Добавьте следующий импорт в верхней части файла:

use Illuminate\Http\Request; 

в противном случае контроллер получает инъекции экземплярном запрос класс из глобального пространства имен, который является псевдонимом Illuminate \ Support \ Facades \ Request ./

+0

Спасибо! Это помогло;) – Tom1410

+1

извините меня за вопрос, но я думал, что все общественные методы могут быть доступны с использованием фасада? – Fahmi

+1

Это правда, но это работает, только если вы вызываете данный метод статически, например. «Request :: вход()'. Только статические вызовы пересылаются в методы экземпляра объекта за фасадом. –