<script>
function check()
{
<% if !user_signed_in? %>
alert("Sign in to order");
<%redirect_to :path=>new_user_session_path%>
<% else %>
<% if current_user.points < form.order_total.value %>
<%redirect :path=>credits_path%>
<% end %>
<% end %>
}
</script>
我已经在订单新页面中写了这个。我写这篇文章是为了回应onclick动作。我在这做错了什么?我也试过
&lt;%redirect_to new_user_sessions_path%&gt;而且对于另一个也是如此。我应该如何改变那个有用的工作?
我得到的错误是
undefined method `redirect_to'
答案 0 :(得分:2)
您可以使用window.location
使用javascript重定向用户,并使用路径助手通过Rails获取位置。像这样的Sthing
<script>
function check()
{
<% if !user_signed_in? %>
alert("Sign in to order");
window.location = "<%= j new_user_session_path %>";
<% elsif current_user.points < form.order_total.value %>
window.location = "<%= j credits_path %>";
<% end %>
}
</script>
请注意,Rails部分在发送到客户端之前会被解析。所以if else语句不会在客户端执行。