Ruby on rails 使用map在RubyonRails5数据库中创建新记录的最佳实践

Ruby on rails 使用map在RubyonRails5数据库中创建新记录的最佳实践,ruby-on-rails,ruby,hashmap,Ruby On Rails,Ruby,Hashmap,我正在使用第三方API以散列格式收集数据。我试图做的是获取散列数据并将其存储到我的数据库中 假设我有一个名为comments的哈希实例。在注释中,散列返回以下内容 {"message"=>"Welcome to New York", "from"=>{"name"=>"John Doe"} 我想把这个散列存储在一个名为Comment的表中 我想知道rails实现这一点的最佳实践是什么。您可以创建一个注释模型,并使用ActiveRecord将其存储在数据库中。 在文件夹app/

我正在使用第三方API以散列格式收集数据。我试图做的是获取散列数据并将其存储到我的数据库中

假设我有一个名为comments的哈希实例。在注释中,散列返回以下内容

{"message"=>"Welcome to New York", "from"=>{"name"=>"John Doe"}
我想把这个散列存储在一个名为Comment的表中


我想知道rails实现这一点的最佳实践是什么。

您可以创建一个注释模型,并使用ActiveRecord将其存储在数据库中。 在文件夹app/model/create a file model.rb下 在里面写点什么

class Message < ApplicationRecord
end

在Rails中,您只需根据需要为数据创建带有相应数据库表的模型。这取决于您的域,即您实际想要存储的内容,以及您想要实现的内容

在您的情况下,可能会得到两个数据库表:

具有列ID、名称等的表PERSON。。。 具有列ID、人员ID、文本等的表消息。。。
因此,您可以简单地使用Rails生成器创建所有这些内容。查看该页上的指南索引以了解更多信息,这些都应在第一个基本章节中详细解释。

如果您能解释为什么否决它,我将很乐意改进我的答案:-您的表的模式如何?
my_hash = {"message"=>"Welcome to New York", "from"=>{"name"=>"John Doe"}
message = message.new(my_hash['message'])
message.save