2010-06-26 6 views
0

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

@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 
} 

и т.д.

+1

Каковы будут индексы и значения вашего массива? Здесь я не вижу никаких массивов. –

ответ

2

Вы не хотите:

+0

@Godwin Это правильно - вы не хотите преобразовывать хеш в массив, вы хотите узнать, как использовать хэши –

+0

Привет, Дейв, Возможно, мой вопрос может быть неправильным. Итак, как мне его использовать? – Godwin

+0

В этом случае, если '@ output' представляет собой массив хэшей похожих структур в @var, вы можете использовать свой текущий код, но с' g [: FileName] 'и' g [: post_id] 'вместо текущего линий в вашем блоке. –

0

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

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

Try С., из стандартной библиотеки.

require 'pp' 
pp @vars 

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

require 'rubygems' 
require 'ap' 
ap @vars 

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