I\'m sending an array of association ids, say foo_ids
to my controller. To permit an array of values, I use:
params.permit(foo_ids: [])
I ran into the same issue and found a similar solution as Donato, albeit while constructing a multipart FormData in JS. The trick was to put an empty string in the array.
const formData = new FormData()
formData.append('dish[tag_ids][]', '')
On the controller side, params arrives with "dish"=>{"tag_ids"=>[""]}
, which dish.update interprets as "remove all tags".