How to get an input field

How to get an input field for updating a task? When trying dd(Request::input('task')); I get "The non-static Illuminate \ Http \ Request :: input () method should not be called statically, assuming $ this from an incompatible context"

 <?php namespace App\Http\Controllers; use App\Http\Requests; use App\Http\Controllers\Controller; use App\Task; use Illuminate\Http\Request; class TaskController extends Controller { public function update($id) { dd(Request::input('task')); $task = Task::findOrFail($id); $task->title = Request::input('task'); $task->save(); return Redirect::to('tasks'); } 

Edit view (it works fine)

 {!! Form::model($task, array('url' => 'tasks/'.$task->id, 'method' => 'PATCH')) !!} {!! Form::text('task', $task->task, array('class' => 'form-control')) !!} {!! Form::submit('Edit', array('class' => 'btn btn-default')) !!} {!! Form::close() !!} 
+6
source share
2 answers

To do this, you should use Injection Dependency:

 use Illuminate\Http\Request; ... public function update(Request $request, $id) { // $task->title = $request->input('task'); // } 

See the docs for more information: http://laravel.com/docs/5.0/controllers#dependency-injection-and-controllers

+10
source

You have imported the wrong Request .

To use the Request facade, you must do:

 use Illuminate\Support\Facades\Request 

Or just an alias:

 use Request 

You can also use dependency injection as follows:

 use App\Http\Requests; use App\Http\Controllers\Controller; use App\Task; use Illuminate\Http\Request; class TaskController extends Controller { public function __construct(Request $request){ $this->request = $request; } public function update($id){ $task = Task::findOrFail($id); $task->title = $this->request->input('task'); $task->save(); return Redirect::to('tasks'); } } 

Or use only one DI for this method:

 public function update(Request $request, $id){ $task = Task::findOrFail($id); $task->title = $request->input('task'); $task->save(); return Redirect::to('tasks'); } 
+17
source

Source: https://habr.com/ru/post/982044/


All Articles