конвертировать HASH в ARRAY - PullRequest
0 голосов
/ 26 июня 2010

После сохранения некоторых значений в базе данных я затруднившись распечатать их. Хотя я был в состоянии вытащить данные из базы данных, вывод будет выглядеть следующим образом:

@vars={:object=>"46789620999001", :source_id=>1, :comment=>"["This is 
my first commenttoday and tommorrow", "This is my first commenttoday 
and tommorrow", "This is my first commenttoday and tommorrow", "This 
is my first commenttoday and tommorrow", "This is my first comment", 
"This is my first comment", "its nice!!!", "Many people do not take 
this serious. In this life we have a big role to play in making 
ourselves what we would be. It is only God that can help us to live 
that life which we have planned, so we can only pray to Him who is the 
all and all in our life to help 
us."]", :title=>"", :content=>"<div>Life is beautiful. In this life, 
whatever you see is what you will use to make out your way. People 
around you can help you in many things and ways but can never live 
your life for you. It is left for you to live your life, make and take 
decisions that you think will help you in living out your dream life. 
I believe everybody has a dream life he would like to live. Whatever 
decisions one take today will go a long way in determining the kind of 
life the one will live in future.<br />Take this as an advise.Bye </ 
div><div class="blogger-post-footer"><img width='1' height='1' 
src='https://blogger.googleusercontent.com/tracker/ 
6876835757625487750-2447909010390406819?l=godwinagada.blogspot.com' 
alt='' /></div>", :author=>"["Godwin", 
"ken"]", :category=>"Reality", :post_id=>"", :date=>"2010-06-04", :FileName=>"first"} 
>] 

пожалуйста, кто-то может помочь в обращении к каждой из данных в этом выход например

@output.each { |g| 
puts g.FileName 
puts g.post_id 
} 

и т.д.

Ответы [ 3 ]

2 голосов
/ 26 июня 2010

Не хочешь:

@vars[:FileName]
@vars[:post_id]
0 голосов
/ 28 июня 2010

Попробуйте pp из стандартной библиотеки.

require 'pp'
pp @vars

Существует еще одна альтернатива, которая называется awesome_print, вы можете добавить драгоценный камень из http://rubygems.org/gems/awesome_print, который будет выглядеть так

require 'rubygems'
require 'ap'
ap @vars

Любой из них должен печатать хеш в формате, который легче читать.

0 голосов
/ 28 июня 2010

У вас есть хеш, который содержит набор ключей, каждый из которых указывает на значение. Есть несколько способов справиться с ними:

  1. Если вы хотите просто просмотреть его для отладки. Загрузите симпатичную печать (требуется 'pp') и хорошенько напечатайте ее (pp @vars). Еще лучший выбор - драгоценный камень Awesome Print.
  2. Если вы выводите значение каждой пары, просто повторяйте каждый проход блока для вашего действия:
    @vars.each do |key, value|
      puts "#{key} => #{value}
    end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...