【问题标题】:rails - redirect back unless previous page was artist pagerails - 除非上一页是艺术家页面,否则重定向回来
【发布时间】:2011-02-02 16:35:59
【问题描述】:

我想重定向回上一页,除非上一页是我的“艺术家”控制器的“显示”操作。

所以我猜它看起来像:

if *previous page was artist show*
  redirect_to [track.artist, track]
else
  redirect_to :back
end

我的问题是 - 我如何测试上一页是否是我的艺术家控制器的显示操作..?

【问题讨论】:

    标签: ruby-on-rails ruby redirect controller


    【解决方案1】:

    也许request.referer 就是您要找的东西?然后你可以这样说:

    if request.referer == artist_url(track.artist)
      redirect_to [track.artist, track]
    else
      redirect_to :back
    end
    

    【讨论】:

    • hmm - 似乎是个好主意,但由于某种原因,它不起作用。出于某种原因,它没有通过测试(因此它不断重定向 :back 而不是艺术家、曲目页面)。任何想法为什么会这样?
    • 对不起,我认为它应该是艺术家 URL 而不是艺术家路径。我会更新答案。您还必须记住,任何参数都可能不匹配,因此您可以使用正则表达式来检查。
    猜你喜欢
    • 2011-03-31
    • 1970-01-01
    • 2010-10-17
    • 2011-03-19
    • 1970-01-01
    • 2012-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多