为什么我在 JavaScript 中的数组索引会作为字符串发送到 Ruby?我没有使用分数 [0],而是以分数 [“0”] 的形式访问第一个元素。我也不是以 score.candidate_id 的形式访问我的实例变量,而是以 score["candidate_id"] 的形式访问。我该如何进行这项工作?
代码:我的 JQuery 通过此函数通过 AJAX 发送分数:
$.post("submit.com", {scores: results}, function(data) {console.log(data)}, "json")
其中results
是一个由以下组成的数组
{judge_id: x, category_id: y, candidate_id: z, score: s}
Ruby 后端(Sinatra 不工作)
post '/submit' do
woot = JSON.parse(params[:scores])
woot.each do |new_score|
Score.new({
score: new_score["score"],
pageant_id: Pageant.active.id,
candidate_id: new_score["candidate_id"],
judge_id: new_score["judge_id"],
category_id: new_score["category_id"]
}).save
end
params[:scores]["1"].inspect.to_json
end