如何将“文本”放入数据库?

时间:2015-10-05 03:08:20

标签: ruby ruby-on-rails-3

我使用关键字提取API生成了以下内容 (我搜索了“希特勒”,因为当你搜索他时,没有人试图卖给你东西。)

x=[{"relevance"=>"0.592174", "text"=>"eight-year-old Hitler"}, {"relevance"=>"0.589796", "text"=>"Hitler states"}, {"relevance"=>"0.589118", "text"=>"Hitler lived."}, {"relevance"=>"0.585102", "text"=>"Hitler learnt"}, {"relevance"=>"0.580278", "text"=>"Hitler Youth"}, {"relevance"=>"0.414842", "text"=>"German Workers"}, {"relevance"=>"0.413532", "text"=>"German military leaders"}, {"relevance"=>"0.404701", "text"=>"nazi party"}, {"relevance"=>"0.391943", "text"=>"Mein Kampf"}, {"relevance"=>"0.388932", "text"=>"Reichstag"}, ]

所以数据库应该有:

Eight-year-old hitler
Hitler states
...

我尝试了x.each do |x|

x.to_a.each do
x["text"]
x

这些都不起作用。

1 个答案:

答案 0 :(得分:0)

由于您没有提供以下信息,我将做出一些假设:

  • 数据库表名称
  • 表格架构
  • 型号名称
  • ORM

让我们将x重命名为search_results。我们还假设我们在数据库中有一个名为search_results的表,一个名为SearchResult的模型,search_results表有一个名为text的列,并且我们使用ActiveRecord作为ORM:

search_results.each do |data| 
  SearchResult.create(text: data[:text])
end

或者因为你有一系列哈希,只需:

SearchResult.create(search_results)