【发布时间】:2015-12-01 14:56:05
【问题描述】:
我正在尝试创建一个对象并将其转换为 json。
require 'json'
class Person
attr_accessor :first_name, :last_name
def to_json
hash = {}
self.instance_variables.each do |var|
hash[var] = self.instance_variable_get var
end
hash.to_json
end
end
person = Person.new
person.first_name = "Michael"
person.last_name = "Jordon"
我得到了输出:
person.to_json
# => {"@first_name":"Michael","@last_name":"Jordon"}
我必须做些什么改变才能使 @ 符号不作为 json 字符串中变量名的一部分出现?
【问题讨论】:
-
如果您要手动执行此操作,则使用正常的字符串操作从符号中删除前导
@(这是符号;这是您希望将其转换为字符串的提示)。不过,有大量的库可以为您完成所有这些工作。