我很困惑爲什麼我的簡單紅寶石對象不轉換爲json。爲什麼我的ruby類不能轉換爲json?
>irb
>
require 'json'
class User
attr_accessor :name, :age
def initialize(name, age)
@name = name
@age = age
end
end
u1 = User.new("a", 1)
u2 = User.new("b", 2)
puts u1.to_json
"\"#<User:0x000001010e9f78>\""
我錯過了什麼?
我想將這些對象存儲到數組集合中,然後將整個集合轉換爲json。
users = []
users << User.new("a", 1)
users << User.new("b", 2)
users.to_json
注意:這不是使用Rails,只是普通的舊Ruby!
我想我的json是一個用戶對象數組。
[
{"name": "john", "age": 22},
{"name": "john1", "age": 23}
{"name": "john2", "age": 24}
]
看看如何封送來自JSON的ruby結構https://github.com/ruby/ruby/blob/trunk/ext/json/lib/json/add/struct.rb,你必須寫下你的'to_json'和'as_json'函數,這裏有更多的例子https://github.com/ruby/ruby/tree/trunk/ext/json/lib/json/add – bjhaid
我覺得這會更容易,我被寵壞了:) – Blankman
它會更容易,但很難知道你想讓你的json看起來像 – bjhaid