0

是否有等效的方法在 Rails 控制器中执行“top.location.href”javascript 类型重定向?我想最终在 iframe 之外的控制器中执行 before_filter 重定向。

4

1 回答 1

2

我不相信有一个内置的 Rails 方法可以实现你想要的。但是,您可以像这样呈现 javascript 内联:

class FooBarController < ApplicationController
  before_filter :inline_redirect

  def inline_redirect
    if some_condition
      render :layout => false, :inline => '<script>window.top.location = "http://someurl.com";</script>'
    end
  end
end

我想这不是真正的最佳实践。你真的应该创建一个视图并将 javascript 放在那里。请注意,某些用户可能禁用了 javascript,因此您也需要处理这种情况。

于 2012-04-30T10:59:05.013 回答