This method is called just after an application inherits from Rails::Application, allowing the developer to load classes in lib and use them during application configuration.
class MyApplication < Rails::Application require "my_backend" # in lib/my_backend config.i18n.backend = MyBackend end
Notice this method takes into consideration the default root path. So if you are changing config.root inside your application definition or having a custom Rails application, you will need to add lib to $LOAD_PATH on your own in case you need to load files in lib/ during the application configuration as well.
# File railties/lib/rails/application.rb, line 96 def add_lib_to_load_path! #:nodoc: path = config.root.join('lib').to_s $LOAD_PATH.unshift(path) if File.exists?(path) end