Rails请求引用者不包含#xxx

时间:2015-05-13 19:00:21

标签: ruby-on-rails

我有一个Rails 3表单,我使用Bootstrap选项卡。 每个选项卡呈现不同的形式(但对于同一个控制器)。

当我在tab2上提交表单时,页面顶部的URL为:

http://localhost:3000/costprojects/1#tab2

在costprojects控制器中,我想在用户提交表单时转到下一个标签页。

我认为这样可行:

  def update
    @costproject = Costproject.find(params[:id])
    nextpath =  costproject_path(@costproject) + '#tab2'
    nextpath =  costproject_path(@costproject) + '#tab3' if request.referer.include?("#tab2")
    nextpath =  costproject_path(@costproject) + '#tab4' if request.referer.include?("#tab3")


    respond_to do |format|
      if @costproject.update_attributes(params[:costproject])
        format.html { redirect_to nextpath, notice: 'Capital Project was successfully updated.' } 

但是,request.referer并未包含' tab2'。

怎么回事?

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

主播只在客户端可用。它永远不会作为任何请求标头的一部分发送。见Is the anchor part of a URL being sent to a web server?