我有一个简单的控制器:
class ApplicationController < ActionController::Base
def test_action
render plain: "OK"
end
end
我使用Unirest通过单独的ruby文件发布到该操作:
require 'unirest'
resp = Unirest.post "localhost:3000/test_action.json",
headers:{ "Accept" => "application/json" },
parameters:{ foo: 1, my_list: [{foo: 1}, {foo: 2}] }
puts resp.body
当我运行它时,我在rails控制台中看到以下内容:
Parameters: {"foo"=>"1", "my_list"=>{"foo"=>"2"}}
为什么my_list中的第一项缺失?我怎样才能让它出现?我应该使用除了Unirest之外的东西吗?
答案 0 :(得分:2)
使用哈希时,第二个键值将覆盖第一个键值。 foo: 2
最后读取,是foo的最后一个赋值。如果您希望显示第一个项目,则应将其重命名为[{"foo1":"1"}, {"foo2": 2}]