Module: Crudable::Rails::Installer
- Defined in:
- lib/crudable/rails/installer.rb
Constant Summary collapse
- CALLBACK_ACTIONS_FALSE =
/config\.action_controller\.raise_on_missing_callback_actions\s*=\s*false/
Class Method Summary collapse
Class Method Details
.postinstall(root: ::Rails.root) ⇒ Object
11 12 13 14 15 16 17 18 |
# File 'lib/crudable/rails/installer.rb', line 11 def postinstall(root: ::Rails.root) environments_path = root.join('config/environments') return [] unless environments_path.directory? environments_path.glob('*.rb').filter_map do |file| update_raise_on_missing_callback_actions(file) end end |
.update_raise_on_missing_callback_actions(file) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/crudable/rails/installer.rb', line 20 def update_raise_on_missing_callback_actions(file) contents = file.read return unless contents.match?(CALLBACK_ACTIONS_FALSE) updated_contents = contents.gsub( CALLBACK_ACTIONS_FALSE, 'config.action_controller.raise_on_missing_callback_actions = true' ) return if updated_contents == contents file.write(updated_contents) file.basename.to_s end |