Module: RailsStuff::NullifyBlankAttrs
- Defined in:
- lib/rails_stuff/nullify_blank_attrs.rb
Overview
Changes to ‘nil` assigned blank attributes.
class App
nullify_blank_attrs :site_url
# ...
Instance Method Summary collapse
- #nullify_blank_attrs(*attrs) ⇒ Object
-
#nullify_blank_attrs_methods ⇒ Object
Module to store generated methods, so they can be overriden in model.
Instance Method Details
#nullify_blank_attrs(*attrs) ⇒ Object
10 11 12 13 14 15 16 17 |
# File 'lib/rails_stuff/nullify_blank_attrs.rb', line 10 def nullify_blank_attrs(*attrs) RailsStuff.deprecation_07.warn('Use transform_attrs *attrs, with: :nullify') nullify_blank_attrs_methods.class_eval do attrs.each do |attr| define_method("#{attr}=") { |val| super(val.presence) } end end end |
#nullify_blank_attrs_methods ⇒ Object
Module to store generated methods, so they can be overriden in model.
20 21 22 |
# File 'lib/rails_stuff/nullify_blank_attrs.rb', line 20 def nullify_blank_attrs_methods @nullify_blank_attrs_methods ||= Module.new.tap { |x| prepend x } end |