作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我想将数据作为 JSON 发送到 Controller
在javascript中,数据是一个数组,例如a = [1,2]
然后我发布,说
$.post('user/data', {'data' : a})
在用户 Controller 中,我从参数中获取数据。
但是,当我检索 params[:data] 时,我得到了一个散列:
{"0"=>1, "1"=>2}
而不是数组!
所以我必须手动将散列转换为数组。
有没有一种方法可以将确切的数组传递给 Controller ?
最佳答案
我最近遇到了类似的问题。我的解决方法是发送 json 内容而不是默认的编码形式。
我用过
$.ajax(
{
type: "POST",
url: url,
data: JSON.stringify(data),
dataType: "json",
contentType: 'application/json'
}
);
在您的示例中,这可以通过以下方式完成:
$.ajax(
{
type: "POST",
url: 'user/data',
data: JSON.stringify({'data' : a}),
dataType: "json",
contentType: 'application/json'
}
);
关于jquery - 如何在 Rails 中发布一个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9150025/
我是一名优秀的程序员,十分优秀!