То, что я пытался сделать, это отправить параметр как входное значение и перенаправить с Laravel 5.2
.Laravel 5 - withInput не работает при использовании с перенаправлением
Я ссылался на официальную документацию, некоторые публикации на Stackoverflow и Laracast, и вот мои попытки.
//This controller function is run by a POST method and gets an input value
public function makeCustomerId()
{
return redirect('next')
->withInput();
}
Ниже приводится следующая попытка, основанная на документации.
(Значение ввода может быть получено $this->request->input('id', '')
)
public function makeCustomerId()
{
return redirect()
->action('[email protected]', ['inputId' => $this->request->input('id', '')]);
}
Я использовал функцию dd()
для отладки контроллеров, но ничего не было послано для обоих случаев.
Вы видите что-то, что я делаю неправильно? Любые советы будут оценены!
EDIT
добавить больше информации.
Контроллер, указанный выше, запускается из следующих form
. В итоге это приведет к [email protected]
.
<form action="{{url('makeCustomerId')}}" method="POST">
<select name="id">
@foreach ($teams as $team)
<option value="{{$team->id}}">{{$team->id}}</option>
@endforeach
</select>
<br>
<input type="submit" value="Submit">
</form>
Может быть, это неясно, но входной параметр ($this->request->input('id', '')
) соответствует $team->id
.
Ниже приведен пример использования $this->request
. В двух словах, это инъекции зависимостей, а это означает, что я использую request
класс из любого места в классе контроллера, $this->request
use Illuminate\Http\Request;
class PageController extends Controller {
protected $request;
public function __construct(Request $request)
{
$this->request = $request;
}
}
Каков путь к PageController @ showNextPage действия? Включает ли он параметр param 'inputId'? – blablabla
Спасибо за ваш ответ. Я добавил дополнительную информацию, надеясь, что это то, что вы имеете в виду. – Hiroki
А что такое '$ this-> request'? Как вы его назначаете и из какого пространства имён? –