我在wrap_parameters format: [:json]
中有wrap_parameters.rb
。我使用jQuery.post('photos', {name: 'flower'});
发布到服务器。在photos#create
中,params
是
{"name"=>"flower", "controller"=>"photos", "action"=>"create"}
但我期待
{"name"=>"flower", "controller"=>"photos", "action"=>"create", "photos"=>{"name"=>"flower"}}
我错过了什么?
答案 0 :(得分:6)
jQuery.post('photos', {name: 'flower'});
调用将params发布为“标准”形式(application / x-www-form-urlencoded或multipart / form-data),而不是json。所以wrap_parameters format: [:json]
不起作用。
尝试删除format: [:json]
或发布json数据,例如
$.ajax({
url:'photos',
type:"POST",
data:JSON.stringify({name: 'flower'}),
contentType:"application/json; charset=utf-8",
dataType:"json",
success: function(){
...
}
})
答案 1 :(得分:0)
您必须使用标头“Content-Type”:“application/json”来执行您的发布请求。