今天看见他们再用ruby controller写josn参数,自己不会所以就学习一下。
开发网页服务程序时,你会发现,接收 JSON 格式的参数更容易处理。如果请求的 Content-Type 报头是 application/json,Rails 会自动将其转换成 params Hash,按照常规的方法使用:
例如,如果发送如下的 JSON 格式内容:
{ "company": { "name": "acme", "address": "123 Carrot Street" } }
得到的是 params[:company] 就是 { "name" => "acme", "address" => "123 Carrot Street" }。
如果在初始化脚本中开启了 config.wrap_parameters 选项,或者在控制器中调用了 wrap_parameters 方法,可以放心的省去 JSON 格式参数中的根键。Rails 会以控制器名新建一个键,复制参数,将其存入这个键名下。因此,上面的参数可以写成:
{ "name": "acme", "address": "123 Carrot Street" }
假设数据传送给 CompaniesController,那么参数会存入 :company 键名下:
{ name: "acme", address: "123 Carrot Street", company: { name: "acme", address: "123 Carrot Street" } }