estoy tratando de enviar una solicitud de jQuery Ajax PUT que tiene este aspecto:¿Cómo PONGO datos de JSON a Ruby on Rails usando jQuery?
$.ajax({
type: "PUT",
url: '/admin/pages/1.json',
data: { page : {...} },
dataType: 'json',
success: function(msg) {
alert("Data Saved: " + msg);
}
});
Mi controlador se ve más o menos así:
respond_to do |format|
if @page.update_attributes params[:page]
format.html{ ... }
format.json{ render :json => {:saved => 'ok'}.to_json }
else
format.html{ ... }
format.json{ render :json => {:saved => 'fail'}.to_json }
end
end
pero me sale el siguiente error.
se produjo el error mientras que la evaluación nil.name /Library/Ruby/Gems/1.8/gems/activesupport-2.3.2/lib/active_support/xml_mini/rexml.rb:29:in merge_element!' /Library/Ruby/Gems/1.8/gems/activesupport-2.3.2/lib/active_support/xml_mini/rexml.rb:18:in
de análisis sintáctico' (DELEGACIÓN): 2: __send__' (__DELEGATION__):2:in
en análisis sintáctico ' /Library/Ruby/Gems/1.8/gems/activesupport-2.3.2/lib/active_support/core_ext/hash/conversions.rb:154:in `from_xml' ... ...
Es como si Ruby on Rails estuviera intentando analizar los parámetros como XML, pero quiero usar JSON.
¿Qué debo hacer para poner JSON en Ruby on Rails?
actualización de su pregunta original mediante la edición que en vez de pedir una nueva pregunta: http://stackoverflow.com/questions/907910/how- do-i-put-data-to-rails-using-jquery – tvanfosson