Можно ли поместить request.referer в тег link_to. У меня есть страница, которая вызывается двумя разными страницами, и я хотел бы использовать ссылку, чтобы вернуться (если есть задняя страница, в противном случае установите страницу по умолчанию). Пока что пробовал это.

  <%= link_to "Return", request.referer %>

Но я получаю сообщение об ошибке: undefined method referer.

Также пробовал в контроллере что-то вроде:

@url = request.referer

И на странице:

  <%= link_to "Return", @url %>

Но я получаю ссылку с текущим URL-адресом страницы. Как я могу добиться того, чего хочу.

Спасибо.

3
Flezcano 25 Мар 2014 в 01:54
Да, это должно работать нормально. что ты уже испробовал? Что не работает? Что конкретно вам нужно для продвижения вашей идеи?
 – 
joshua.paling
25 Мар 2014 в 02:01

2 ответа

Лучший ответ
= link_to "back", request.referer.present? ? request.referer : default_path 

Или в эрбе

<%= link_to "back", request.referer.present? ? request.referer : default_path %>
15
Kimooz 25 Мар 2014 в 02:21

Если вы просто хотите сделать кнопку возврата, вы можете сделать следующее:

<%= link_to "Back", :back %> 

Rails определяет, какая это страница для вас. Я использовал ее в нескольких формах как простую кнопку «Отмена».

2
UsAndRufus 12 Июн 2020 в 18:50