我有一个链接,允许用户通过该链接在我的应用中声明虚构位置
<%= link_to("Claim this location!", loc_claim_path(@loc.id), :id => "loc_claim") %>
它通过我的声明控制器路由请求,如下所示:
def claim
@loc = Location.find(params[:loc_id])
if !@user
flash[:notice] = "You need to be logged in to claim a location!"
redirect_to(@loc)
else
flash[:notice] = "Location claimed!"
render("claim.js")
end
end
如果用户没有登录(即@user 为假),它会将他们重定向回位置页面。
但是,如果用户已登录,则需要触发 javascript claim.js,然后在完成后还会重定向回位置页面。
我的问题是,如果设置:remote => true,它将启动 javascript,但不会启动 html,反之亦然,当我不设置:remote 时。
有没有办法让我两全其美?或者,除此之外,有没有更好的方法来设置它?