gpt4 book ai didi

jquery - 无法访问后端返回的JSON数据

转载 作者:行者123 更新时间:2023-12-01 03:36:32 25 4
gpt4 key购买 nike

我发出 AJAX 请求,并收到保存到数据变量的响应。

我的 Controller :

def retrieve
data = params[:data]
@question = Question.find_by(id: params[:question_id])
@choices = @question.choices
results = []
for d in data
if Choice.find_by(id: d).correct
results << d
end
end

respond_to do |format|
format.json {
render json: {
choices: @choices.to_json(only: [:id,:correct]),
results: results,
message: "success"
}
}
end
end

响应:

Object {choices: "[{"id":1,"correct":true},{"id":2,"correct":false}]", results: Array[1], message: "success"}

我在应该有值的地方得到了未定义的值。

data.choices[0].id -> returns undefined

最佳答案

使用as_json而不是to_json

你的代码应该是

@choices.as_json(only: [:id,:correct])

而不是

@choices.to_json(only: [:id,:correct])

有关 as_jsonto_json 之间差异的更多信息,请查看此 link

简单的 as_json 更适合复杂的数据类型,例如 activerecord 对象

关于jquery - 无法访问后端返回的JSON数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32586479/

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