Rails如果引用者然后发出问题

时间:2011-07-13 03:05:59

标签: ruby-on-rails-3 referrer

我正在尝试找出在rails特定引用者的控制器中构建if else if语句的最佳方法。有没有办法拉出最后一个rails路径并在下面的语句中使用它?我想我很亲密,但完全难过......

这是一个更新操作,将从网站上多个位置的一个表单中点击。

我希望替换“form_path”

def update
  @object = Milestone.find(params[:id])
    if @milestone.update_attributes(params[:milestone])
      if request.referer == form_path
        redirect_to root_path
      else
        redirect_to object2_path
      end
    else
      ....
    end
 end

1 个答案:

答案 0 :(得分:0)

form_path是否是您在控制器中的其他位置定义的变量?除了理解之外,它看起来应该有效。

你可以根据它的来源,在表单中放置一个hidden_​​field,而不是乱搞引用,并将其从params哈希中拉出来。

类似的东西:

hidden_field_tag :location, controller_name

然后在控制器中:

if params[:location] == yadda yadda