params do
build_with Grape::Extensions::Hash::ParamBuilder
requires :avatar, type: File
end
post '/' do
...
end
Returns an error #<Grape::Exceptions::ValidationErrors: avatar is invalid> because:
- This line calls
deep_dup of hash values ( including tempfile)
|
rack_params.deep_dup.tap do |params| |
Tempfile#deep_dup returns instance of File
|
value.is_a?(::Hash) && value.key?(:tempfile) && value[:tempfile].is_a?(Tempfile) |