2012-06-18 53 views
3

我有wrap_parameters format: [:json] in wrap_parameters.rb。我发布到服务器jQuery.post('photos', {name: 'flower'});。在photos#createparamsRails的wrap_parameters不起作用

{"name"=>"flower", "controller"=>"photos", "action"=>"create"} 

但我期待

{"name"=>"flower", "controller"=>"photos", "action"=>"create", "photos"=>{"name"=>"flower"}} 

我缺少什么?

+0

你重新启动服务器? –

+0

@Sergio当然,我做了 – powerboy

+0

只是检查:) –

回答

5

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(){ 
    ... 
    } 
}) 
+0

工程!我的最终解决方案是[这个答案](http://stackoverflow.com/a/6828157/312483) – powerboy