Rails 源代码里一些常用方法
Active Support
eager_autoload
和 autoload
class_attribute
attr_internal
mattr_accessor
delegate
后面是个对象即可,而 Ruby 又号称"一切皆对象"。
最终通过 module_eval 并重新定义了方法。
委托类方法给实例对象使用。
config_accessor
define_callbacks
run_callbacks
attr_internal_writer
info
debug
warn
error
fatal
unknown
也就是 Rails.logger 的各个级别(或者说类别)。
included
extract_options!
Abstract Controller
abstract!
我们自定义的 Controller 里的 public instance methods(公开实例方法) 都会被当做 action 来对待。 因此,继承的时候要做一些处理, 以避免父类的实例方法被当做 action. 目前,解决方法是把父类声明为:abstract = true
helper
helper_method
Railtie
delegate :config
, to: :instance
Initializable
initializer
最后更新于