2014-04-07 60 views
3

我正在讀取json數據。獲取特定字段的json數據並存儲在文件中

users_json = User.all.to_json 

並存儲爲arry哈希像。

arry = JSON.parse(users_json) 

而不是取名字&電子郵件,用於文件的寫,現在我做這個簡單的多行,

email = arry.map { |x| x["email"] } 

name = arry.map { |x| x["name"] } 

而且非常肯定會有一個行存在這樣做的。請幫助我改進我的邏輯。

+1

我不知道你爲什麼把它轉換成json。爲什麼不只是'users = User.all; emails = users.collect(&:email)' –

+0

@max謝謝, 其實我的任務是收集json格式的數據並將其寫入文件。我是json的第一天,所以我這樣做了。 – Awais

回答

2

爲Rails 3

User.select([:name, :email]).to_json 

而對於軌道4無需陣列的

User.select(:name, :email).to_json 

參考APIdock更多關於什麼選擇一樣。

+0

真棒真的,但在JSON格式它也顯示ID,請告訴我更多我現在可以爲電子郵件和名稱寫文件...再次感謝 – Awais

+0

沒有JSON格式不顯示ID字段。和谷歌如何寫入一個文件。我想,生活並不那麼容易。 – tejasbubane

1

另一種可能的方式可以是

User.all.map{|x| [x.name, x.email]}.to_json 

可是真的沒有一點轉換成JSON。

相關問題