Cada vez que quiero PUBLICAR una matriz de objetos JSON con jQuery to Rails, tengo este problema. Si clasifico la matriz, puedo ver que jQuery está haciendo su trabajo correctamente:
"shared_items"=>"[{\"entity_id\":\"253\",\"position\":1},{\"entity_id\":\"823\",\"position\":2}]"
Pero si solo envío la matriz como los datos de la llamada AJAX, obtengo:
"shared_items"=>{"0"=>{"entity_id"=>"253", "position"=>"1"}, "1"=>{"entity_id"=>"823", "position"=>"2"}}
Mientras que si solo envío una matriz simple, funciona:
"shared_items"=>["entity_253"]
¿Por qué Rails está cambiando la matriz a ese extraño hash? La única razón por la que me viene a la mente es que Rails no puede entender correctamente el contenido porque no hay ningún tipo aquí (¿hay alguna forma de configurarlo en la llamada de jQuery?):
Processing by SharedListsController#create as
¡Gracias!
Actualización:
estoy enviando los datos como una matriz, no una cadena, y la matriz se crea dinámicamente usando la .push()
función. Probado con $.post
y $.ajax
, mismo resultado.