Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Ruby/Rails-Can';t直接在控制器中访问JSON对象属性_Ruby On Rails_Ruby On Rails 3_Json - Fatal编程技术网

Ruby on rails Ruby/Rails-Can';t直接在控制器中访问JSON对象属性

Ruby on rails Ruby/Rails-Can';t直接在控制器中访问JSON对象属性,ruby-on-rails,ruby-on-rails-3,json,Ruby On Rails,Ruby On Rails 3,Json,我正在设置一个API 客户端(使用HttpParty)将其发布到API: {:body => { :product=> {:description=>"some text", :cost => "11.99"}, :brand=> {:name=>"BrandName", :etc =>"hey"} } } 服务器/api接收post。 现在,如果我访问params[:brand]我会

我正在设置一个API

客户端(使用HttpParty)将其发布到API:

{:body => 
       {
        :product=> {:description=>"some text", :cost => "11.99"}, 
        :brand=>   {:name=>"BrandName", :etc =>"hey"}
       }
}
服务器/api接收post。 现在,如果我访问
params[:brand]
我会得到:

{"name"=>"BrandName", "etc" =>"hey"}
如果我这样做:

Brand.new(params[:brand])
然后,我得到一个新的Brand对象,该对象正确填充了“name”和“etc”属性

但是,如果我尝试访问
params[:brand][:name]
,我只会得到
nil

有什么想法吗

谢谢。

使用
params[:brand][“name”]
params[“brand”][“name”]

哈希键可以是任何类型的对象。rails的常见做法是使用符号作为散列键,但是当从JSON转换过来时,键很可能是字符串