Ruby on rails 在ruby中将列名映射并转换为json格式的变量
我正在从数据库表(客户端)获取值。我对两列(名字和id)感兴趣。因为我是以json格式发送响应的,所以我希望得到这样的结果 学生:Ruby on rails 在ruby中将列名映射并转换为json格式的变量,ruby-on-rails,ruby,Ruby On Rails,Ruby,我正在从数据库表(客户端)获取值。我对两列(名字和id)感兴趣。因为我是以json格式发送响应的,所以我希望得到这样的结果 学生:[“名字”:“亚当”,id:“12”,…] 我尝试了Student.all.map{s.first|u name,s.id]},但这里我只得到值(adam,12)而不是索引(“first_name”,“id”) 是否有一种方法可以使列名出现在响应中而不使查询复杂化,那么,只需使用基本工具: @students.map{|st| {id: st.id, first_na
[“名字”:“亚当”,id:“12”,…]
我尝试了Student.all.map{s.first|u name,s.id]}
,但这里我只得到值(adam,12)
而不是索引(“first_name”,“id”)
是否有一种方法可以使列名出现在响应中而不使查询复杂化,那么,只需使用基本工具:
@students.map{|st| {id: st.id, first_name: st.first_name}}
您只能与json一起使用:
Student.all.to_json(:only=>[:id, :first_name])
如果你在学生模型中不将
重写为_json
或为_json
,那就行了。是的,没有那么神奇,但它忽略了json的转义开销,这就是为什么我更喜欢它:dthnks mate结果很好,但dimakura的答案看起来更好一点,但是如果你在谈论json,那么就用json来做,如果你需要将scape用作_json,你不必自己去翻译json。