[php] Laravel 뒤로 버튼

페이지에 간단한 뒤로 버튼을 만들려고합니다. 사용자는 두 개의 다른 페이지에서이 페이지에 도착할 수 있으므로 어느 페이지에서 도착했는지 알고 싶습니다. 가능합니까?



답변

Laravel에서는 다음과 같이 할 수 있습니다 : <a href="{{ Request::referrer() }}">Back</a>(블레이드를 사용하고 있다고 가정).

라 라벨 4

{{ URL::previous() }}

라 라벨 5+

{{ url()->previous() }}

라 라벨 문서


답변

나는 이것이 오래된 질문이라는 것을 알고 있지만 동일한 해결책을 찾는 동안 발견했습니다. 위의 솔루션은 Laravel 4에서 작동하지 않는 것으로 보이지만 지금 사용할 수 있습니다.

<a href="{{ URL::previous() }}">Go Back</a>

L4에서이 기능을 찾는 사람들에게 도움이되기를 바랍니다.

(출처 : https://github.com/laravel/framework/pull/501/commits )


답변

Laravel 5.2+, 뒤로 버튼

<a href="{{ url()->previous() }}" class="btn btn-default">Back</a>


답변

다음은 완전한 블레이드 (라 라벨이 사용하는 템플릿 엔진) 솔루션입니다.

{!! link_to(URL::previous(), 'Cancel', ['class' => 'btn btn-default']) !!}

클래스가있는 옵션 배열은 선택 사항이며이 경우 Bootstrap 3 버튼의 스타일을 지정합니다.


답변

실제로 {{ URL:previous() }}do work를 사용하지만 동일한 이름의 경로를 사용하여 여러보기를 표시하는 경우이 경로의 첫 번째 끝점으로 돌아갑니다.

제 경우에는 사용자가 선택한 매개 변수를 기반으로 3 개의 다른 뷰를 렌더링 할 수있는 명명 된 경로가 있습니다. 물론 사용자가 아직 옵션을 선택하지 않은 경우이 경로의 첫 번째 입력에 대한 기본 사례가 있습니다.

를 사용할 때 URL:previous()Laravel은 사용자가 다른 옵션을 선택 했더라도 기본보기로 돌아갑니다. 버튼 내에서 자바 스크립트를 사용하여 올바른보기로 돌아갑니다.

<a href="javascript:history.back()" class="btn btn-default">Voltar</a>

설명을 위해 Laravel 5.3에서 이것을 테스트했습니다.


답변

5.1에서는 이것이 작동하도록 만들 수있었습니다.

<a href="{{ URL::previous() }}" class="btn btn-default">Back</a>


답변

아래 중 하나가 문제를 해결합니다.

URL::previous()
URL::back()

다른

URL::current()