diff --git a/lib/polymorphic_integer_type/activerecord_5_0_0/polymorphic_array_value_extension.rb b/lib/polymorphic_integer_type/activerecord_5_0_0/polymorphic_array_value_extension.rb index 7f1fc5e..df57836 100644 --- a/lib/polymorphic_integer_type/activerecord_5_0_0/polymorphic_array_value_extension.rb +++ b/lib/polymorphic_integer_type/activerecord_5_0_0/polymorphic_array_value_extension.rb @@ -29,7 +29,7 @@ def type_to_ids_mapping hash[key] << convert_to_id(value) else - hash[klass.polymorphic_name] << convert_to_id(value) + hash[klass(value)&.polymorphic_name] << convert_to_id(value) end end end diff --git a/lib/polymorphic_integer_type/extensions.rb b/lib/polymorphic_integer_type/extensions.rb index 97bea34..9d43529 100644 --- a/lib/polymorphic_integer_type/extensions.rb +++ b/lib/polymorphic_integer_type/extensions.rb @@ -87,7 +87,7 @@ def has_many(name, scope = nil, **options, &extension) end remove_type_and_establish_mapping(name, options, scope) - super(name, options.delete(:scope), options, &extension) + super(name, options.delete(:scope), **options, &extension) end def has_one(name, scope = nil, **options) @@ -97,7 +97,7 @@ def has_one(name, scope = nil, **options) end remove_type_and_establish_mapping(name, options, scope) - super(name, options.delete(:scope), options) + super(name, options.delete(:scope), **options) end diff --git a/polymorphic_integer_type.gemspec b/polymorphic_integer_type.gemspec index 827a846..7692e32 100644 --- a/polymorphic_integer_type.gemspec +++ b/polymorphic_integer_type.gemspec @@ -18,7 +18,7 @@ Gem::Specification.new do |spec| spec.test_files = spec.files.grep(%r{^(test|spec|features)/}) spec.require_paths = ["lib"] - spec.add_dependency "activerecord", "< 7" + spec.add_dependency "activerecord" spec.add_development_dependency "bundler" spec.add_development_dependency "rake" spec.add_development_dependency "rspec"