将活动记录对象转换为哈希

时间:2019-06-17 13:25:57

标签: ruby-on-rails ruby ruby-on-rails-5

我有一个模型人,其字段为电子邮件,姓名,年龄,电话号码。我想将Person.all转换为哈希。 哈希应具有以下结构:

{
"email1" => ["name", "age", "phone_number"],
"email2" => ["name2", "age2", "phone_number2"]
....
}

我尝试了as_jsonmapattributes等。但是它返回哈希数组。如何创建此自定义结构?

1 个答案:

答案 0 :(得分:2)

您可以从下面的查询中获取它,

strsplit

如果要忽略其他属性,例如Hash[Person.all.collect { |user| [user.email, user.attributes.except(:email).values] }] created_at,请运行

updated_at