Abstract Controller
Abstract Controller 做的事情很有限,Controller 和 Mailer 的共同部分、基础模块。
我们可以看到 Mailer 和 Controller 在形式上有很多相似的部分,可以简单理解这部分由 Abstract 完成。
无论是它自己定义的方法,还是封装 Action View 和 Action Dispatch 得到的方法,最终都提供给 Action Controller 和 Action Mailer 使用。
这些方法(或模块)包含但不限于渲染(模板或局部模板)、Helpers、Callbacks、Mime、Url For 等。
它服务于 Action Controller 和 Action Mailer,找到真正的 action.
辅助 ActionController::Base 将战场转移到具体的 Controller#action(经过 Metal).
辅助 ActionMailer::Base 将战场转移到具体的 Mailer#action.
准备及转移工作在之前已经完成了,它只是在最后一步,调用具体 action.
最后更新于