gpt4 book ai didi

Ruby (Sinatra) JSON.parse 不适用于 json 数据

转载 作者:太空宇宙 更新时间:2023-11-03 16:53:35 26 4
gpt4 key购买 nike

我使用 ko.toJSON 从 knockout.js 获取 json 对象

self.cmaterials = ko.observableArray([]);

....

    ko.computed(function() {
$.ajax({
url: "/editcmat1",
type: "PUT",
data: ko.toJSON(
self.cmaterials
)
});
});

ruby 代码

puts params

{"id":34,"name":"Concrete","material_id":3}

当我尝试转换它时

puts JSON.parse(js)

TypeError - can't convert Hash into String:

我怎样才能使它成为可用的 Ruby 散列。

puts parse.keys
{"id":34,"name":"Concrete","material_id":3}

最佳答案

要执行您尝试使用代码执行的操作,您需要执行以下操作:

 puts JSON.parse(js).to_s

使用 JSON.parse 方法使其成为可用的散列。您正在尝试使用 puts 输出该散列,这意味着您必须将其转换为字符串。如果您想访问该哈希,只需执行以下操作:

hash = JSON.parse(js)
puts hash["id"] #34
puts hash["name"] #concrete
etc...

关于Ruby (Sinatra) JSON.parse 不适用于 json 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15372917/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com