класс Rails::Configuration::MiddlewareStackProxy
MiddlewareStackProxy — это прокси для стека промежуточных программ Rails, который позволяет настраивать промежуточные программы в вашем приложении. Он работает в основном как регистратор команд, сохраняя каждую команду для применения после инициализации над стандартным стеком промежуточных программ, поэтому вы можете добавлять, заменять или удалять любые промежуточные программы в Rails.
Вы можете добавить собственные промежуточные программы, используя метод config.middleware.use.
config.middleware.use Magical::Unicorns
Это поместит промежуточную программу Magical::Unicorns в конец стека. Вы можете использовать insert_before, если хотите добавить промежуточную программу перед другой:
config.middleware.insert_before Rack::Head, Magical::Unicorns
Также есть insert_after, который вставит промежуточную программу после другой:
config.middleware.insert_after Rack::Head, Magical::Unicorns
Промежуточные программы также могут быть полностью заменены другими:
config.middleware.swap ActionDispatch::Flash, Magical::Unicorns
И, наконец, их также можно полностью удалить из стека:
config.middleware.delete ActionDispatch::Flash
Публичные Классовые Методы
# File railties/lib/rails/configuration.rb, line 36 def initialize(operations = [], delete_operations = []) @operations = operations @delete_operations = delete_operations end
Публичные Методы Экземпляров
# File railties/lib/rails/configuration.rb, line 59 def delete(*args, &block) @delete_operations << [__method__, args, block] end
# File railties/lib/rails/configuration.rb, line 47 def insert_after(*args, &block) @operations << [__method__, args, block] end
# File railties/lib/rails/configuration.rb, line 41 def insert_before(*args, &block) @operations << [__method__, args, block] end
# File railties/lib/rails/configuration.rb, line 51 def swap(*args, &block) @operations << [__method__, args, block] end
# File railties/lib/rails/configuration.rb, line 63 def unshift(*args, &block) @operations << [__method__, args, block] end
# File railties/lib/rails/configuration.rb, line 55 def use(*args, &block) @operations << [__method__, args, block] end
Защищенные Методы Экземпляров
# File railties/lib/rails/configuration.rb, line 84 def delete_operations @delete_operations end
# File railties/lib/rails/configuration.rb, line 80 def operations @operations end
© 2004–2018 David Heinemeier Hansson
Licensed under the MIT License.