Ruby on rails rails json作为哈希而不是数组发布
我在ajax发布到ROR操作(从一台服务器到另一台服务器)时遇到了一些问题。基本上,这一要求:Ruby on rails rails json作为哈希而不是数组发布,ruby-on-rails,ruby,json,Ruby On Rails,Ruby,Json,我在ajax发布到ROR操作(从一台服务器到另一台服务器)时遇到了一些问题。基本上,这一要求: post_json = { "stuff": [{"1" => "foo"}] }; $.ajax({ url: "http://someurl.com/api/random_post_action", type: "post", dataType: "json", data: post_json, success: function(data){ console.
post_json = { "stuff": [{"1" => "foo"}] };
$.ajax({
url: "http://someurl.com/api/random_post_action",
type: "post",
dataType: "json",
data: post_json,
success: function(data){
console.log(data);
}});
在random_post_动作参数(ruby on rails)中给出:
预期:
{
"stuff" => [
[0] {
"1" => "foo"
}
],
"controller" => "api",
"action" => "random_post_action"
}
我不确定发生了什么…您希望json无效?你的post_json应该是
{“stuff”=>[{“1”},{“foo”}]}
,正如它所说的那样{“1”}
和{“foo”}
是完全分离的对象。。如果您想要1=>foo,那么您需要。。[{“1”:“foo”}]
@sircapsalot很抱歉,我在写上面的问题时错了。问题仍然存在。“问题仍然存在”?什么问题?我看到了一些陈述,但没有提出任何问题。也许你是想问“为什么“stuff”是一个散列而不是一个散列数组?”@如果不清楚的话,很抱歉,但你的回答相当苛刻。我已经说明了我所得到的和我所期望的,我认为问题很清楚。也许你可以回答我的问题,为什么我得到的是散列而不是数组?这将更有建设性。
{
"stuff" => [
[0] {
"1" => "foo"
}
],
"controller" => "api",
"action" => "random_post_action"
}