В моем приложении у меня есть немного поля, которое появляется на каждой странице, проверяя состояние запросов, выполненных пользователем. Если запрос принят когда-либо, то пользователь должен автоматически быть взят к определенной странице. Это - мой код до сих пор:
<% offersMade.each do |w| %>
<% if w.accepted == true %>
<% redirect_to offer_path(:email => "email@gmail.com") %>
<% end %>
<% end %>
Но я получаю эту ошибку:
undefined method `redirect_to' for #<ActionView::Base:0x1042a9770>
Разве это не возможно пользователю redirect_to в представлении? В противном случае есть ли что-то еще, что я могу использовать? Спасибо за чтение.
redirect_to - это метод ActionController :: Base Class, поэтому вы не можете использовать его в ActionView.
Вы можете попробовать следовать
<% if w.accepted == true %>
<script type="text/javascript">
window.location.href="/logins/sign_up" // put your correct path in a string here
</script>
<% end %>
Отредактировано для параметра электронной почты
window.location.href="/logins/sign_up?email=<%= w.email %>"
Извините, я не знаю, есть ли что-нибудь в ruby для этого.
redirect_to
не является методом ActionView
. Это метод ActionController
. Вероятно, вы можете использовать Javascript window.location.href при загрузке страницы или другом событии, чтобы перенаправить пользователя на другую страницу.