Skip to content

Commit 2b50657

Browse files
committed
Refactor permit_attribute_names method to handle structured params and return empty array for primitive types
1 parent e0ca23c commit 2b50657

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

lib/structured_params/type/array.rb

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,9 +47,11 @@ def serialize(value)
4747
# Get permitted parameter names for use with Strong Parameters
4848
#: () -> ::Array[untyped]
4949
def permit_attribute_names
50-
return [] unless item_type_is_structured_params_object?
50+
return @item_type.permit_attribute_names if item_type_is_structured_params_object?
5151

52-
@item_type.permit_attribute_names
52+
# Primitive arrays return [] for Strong Parameters format.
53+
# Example: tags: [] allows params.permit(tags: [])
54+
[]
5355
end
5456

5557
# Determine if item type is StructuredParams::Object

0 commit comments

Comments
 (0)