简体   繁体   English

建立JSON档案时发生问题

[英]Problem building JSON file

want to get all db entries by a specific hash and return it as json. 想要通过特定的哈希获取所有数据库条目并将其作为json返回。 I use the following code: 我使用以下代码:

@tasks = Task.find_all_by_hash(params[:hash])

  respond_to do |format|
    format.json { render :json => @tasks }
  end

now i have the problem that my json file isn't correct. 现在我有我的json文件不正确的问题。 it has the following output: 它具有以下输出:

[
{
task: {
hash: "9dfca619f00f5488785f6b74ad1b590beefaee7a88c04884bf197e7679f3"
id: 4
created_at: "2010-12-16T09:09:51Z"
updated_at: "2010-12-16T09:14:10Z"
done: true
name: "Hallo"
}
},
{
task: {
hash: "9dfca619f00f5488785f6b74ad1b590beefaee7a88c04884bf197e7679f3"
id: 5
created_at: "2010-12-16T09:12:37Z"
updated_at: "2010-12-16T09:12:37Z"
done: true
name: "Test"
}
},
...
]

but actually i want it like this: 但实际上我想要这样:

{ tasks: [

{"id":"1","date_added":"0001-02-22 00:00:00","post_content":"Check out my content, this is loaded via ajax and parsed with JSON","author":"Ryan Coughlin"},

{"id":"2","date_added":"0000-00-00 00:00:00","post_content":"More content, loaded. Lets try to add a form in and post via ajax and append the new data","author":"Billy Bob"}

]}

any advice? 有什么建议吗? thank you! 谢谢!

Try collecting the task alone to an array and create a json object using that. 尝试将任务单独收集到一个数组中,并使用该对象创建一个json对象。 Some thing like 就像是

@tasks = Task.find_all_by_hash(params[:hash])
a = []
  @tasks.each do |t|
  a << t[:task]
  end
  b = {:tasks => a}

 respond_to do |format|
  format.json { render :json => b }
end

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM