Skip to content

Commit b029a97

Browse files
committed
ensure virtual attribute hashes and methods have consistent types
Now that we are opening up delegation to virtual_has_many, we need to nail down
1 parent 26640bb commit b029a97

File tree

4 files changed

+4
-4
lines changed

4 files changed

+4
-4
lines changed

lib/active_record/virtual_attributes.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ def load_schema!
102102
end
103103

104104
def define_virtual_attribute(name, cast_type, uses: nil, arel: nil)
105-
attribute_types[name] = cast_type
105+
attribute_types[name.to_s] = cast_type
106106
define_virtual_include(name, uses) if uses
107107
define_virtual_arel(name, arel) if arel
108108
end

lib/active_record/virtual_attributes/virtual_arel.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ def arel_for_virtual_attribute(column_name, table) # :nodoc:
111111
private
112112

113113
def define_virtual_arel(name, arel) # :nodoc:
114-
self._virtual_arel = _virtual_arel.merge(name => arel)
114+
self._virtual_arel = _virtual_arel.merge(name.to_s => arel)
115115
end
116116
end
117117
end

lib/active_record/virtual_attributes/virtual_delegates.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ def virtual_delegate(*methods, to:, type: nil, prefix: nil, allow_nil: nil, defa
4444
define_delegate(method_name, method, :to => to, :allow_nil => allow_nil, :default => default)
4545

4646
self.virtual_delegates_to_define =
47-
virtual_delegates_to_define.merge(method_name => [method, options.merge(:to => to, :type => type)])
47+
virtual_delegates_to_define.merge(method_name.to_s => [method, options.merge(:to => to, :type => type)])
4848
end
4949
end
5050

lib/active_record/virtual_attributes/virtual_includes.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ def virtual_includes(name)
2525
private
2626

2727
def define_virtual_include(name, uses)
28-
self._virtual_includes = _virtual_includes.merge(name => uses)
28+
self._virtual_includes = _virtual_includes.merge(name.to_s => uses)
2929
end
3030
end
3131
end

0 commit comments

Comments
 (0)