ruby-on-rails - 使用 ruby​​ 格式化数据数组

标签 ruby-on-rails arrays ruby postgresql

我正在尝试使用 ruby​​ 从 PostgreSQL 获取数据并将它们存储到一个数组中,为此我有一个小脚本:

脚本:

require 'pg'  

conn=PGconn.connect( :hostaddr=>"192.168.111.136", :port=>5432, :dbname=>"sentinel_poc",:user=>"sdn_mehdi", :password=>'skyline123')  

res = conn.exec("SELECT dns_name FROM dns_table group by dns_name").to_a  

a_dns = []  

res.each { |r| a_dns << r }  
puts a_dns.join(",")  

结果是:

{"dns_name"=>"youtube.com                                       "},{"dns_name"=>"stackoverflow.com                                         "},{"dns_name"=>"cisco.com                                         "},{"dns_name"=>"facebook.com                                      "},{"dns_name"=>"yahoo.com                                         "},{"dns_name"=>"onf.com                                           "},{"dns_name"=>"safe.com                                          "},{"dns_name"=>"linkedin.com                                      "},{"dns_name"=>"amazon.com                                        "},{"dns_name"=>"google.com                                        "},{"dns_name"=>"java.com                                          "},{"dns_name"=>"live.com                                          "},{"dns_name"=>"rails.com                                         "},{"dns_name"=>"postgresql.com                                    "},{"dns_name"=>"hp.com                                            "},{"dns_name"=>"wikipedia.org                                     "}

我需要的只是每个域名的名称!类似于 {"youtube.com","google.com","java.com","rails.com","hp.com"}

如有任何建议,我们将不胜感激。

最佳答案

我认为你需要:

res.flat_map(&:values)
# or if you have hashes having size more then 1, then use the below
res.map { |h| h["dns_name"] }
# to strip leading and trailing whit spaces
res.map { |h| h["dns_name"].strip }

关于ruby-on-rails - 使用 ruby​​ 格式化数据数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22988991/

相关文章:

ruby-on-rails - 创建 Ruby On Rails 应用程序时出现 Webpacker 错误

ruby-on-rails - 在 RSpec 请求规范中 stub Controller 操作

ruby - 在 Mechanize 中查找没有名称的字段

ruby-on-rails - Rails 最佳实践 : background process/thread?

mysql - 无法通过套接字 : I'm lost [Rails App] 连接到本地 MySQL 服务器

ruby-on-rails - 如何使用 Devise/CanCan 保护已安装的 Engine 资源?

javascript - 迭代 JSON 以创建导航

arrays - 如何在Postgresql中插入具有列数组<array<double>>的数据框?

javascript - 如何在 ReactJS 组件对象数组中插入元素(在现有元素之间)

ruby - 模糊文档匹配/文本指纹识别的最佳库