ruby-on-rails - 为什么使用 before_action 没有双重渲染?

标签 ruby-on-rails ruby

我想知道为什么在 before_action 中有 redirect_torender 时没有双重渲染。考虑这个例子:

class SomeController < ApplicationController
 before_action :callback

 def new
  callback2
  render 'new'
 end

 def callback
  render 'new'
 end

 def callback2
  render 'new'
 end

end

我看到 before_action 如果不能重定向就没用了,但它是如何制作的?如果我评论 before_action 它会抛出异常。 before_action 是如何实现的而不导致双重渲染?

最佳答案

参见 Rails Guide on controllers :

If a "before" filter renders or redirects, the action will not run. If there are additional filters scheduled to run after that filter, they are also cancelled.

关于ruby-on-rails - 为什么使用 before_action 没有双重渲染?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30168937/

相关文章:

ruby-on-rails - 参数化 ActiveRecord #joins 方法

ruby - 避免使用 Enumerable 方法重新计算某些值

ruby-on-rails - 如何在元标记 og :description content in ruby on rails 中使用 html_safe

ruby-on-rails - Rails 正在向后路由我的 calendar_event_path 吗?

ruby - rspec - 选择之一的匹配器

ruby - 仅在先前的 Selenium 测试失败时才运行 Selenium 测试

ruby - 正则表达式 - 保存重复捕获的组

ruby-on-rails - 在 Jekyll 中使用插件

ruby-on-rails - 构建一个 Rails 表单来过滤索引页面?

ruby-on-rails - Rails 4 to_json 产生意外异常 nil 不是符号