Module: ConvenientService::Common::Plugins::HasAttributes::UsingActiveModelAttributes::Patches
- Defined in:
- lib/convenient_service/common/plugins/has_attributes/using_active_model_attributes/patches/active_model_attributes.rb
Overview
TODO: Remove this patch when Rails updates ‘def initialize(*)` to `def initialize(*args, **kwargs, &block)`. github.com/rails/rails/blob/3872bc0e54d32e8bf3a6299b0bfe173d94b072fc/activemodel/lib/active_model/attributes.rb#L78
Constant Summary collapse
- ActiveModelAttributes =
Copy of ‘ActiveModel::Attributes`.
-
api.rubyonrails.org/classes/ActiveModel/Attributes/ClassMethods.html
-
github.com/rails/rails/blob/v7.0.0/activemodel/lib/active_model/attributes.rb
-
github.com/rails/rails/blob/v6.0.0/activemodel/lib/active_model/attributes.rb
-
github.com/rails/rails/blob/v5.2.0/activemodel/lib/active_model/attributes.rb
-
::ActiveModel::Attributes.dup.tap do |mod| mod.module_eval do ## # NOTE: Overrides `initialize` since current Rails implementation can not accept kwargs. # # TODO: Open a PR to Rails. # def initialize(*args, **kwargs, &block) ## # IMPORTANT: Should be kept in sync with: # https://github.com/rails/rails/blob/3872bc0e54d32e8bf3a6299b0bfe173d94b072fc/activemodel/lib/active_model/attributes.rb#L78 # @attributes = self.class._default_attributes.deep_dup super end end end