Problemas al añadir en lista y paso de parámetros

Hooola

Tengo en un controller

def initialize
super
@itemlist = [Item.new(‘Sobre el Bar’), Item.new(‘Dónde Estamos’),
Item.new(‘Contactar’)]
end

Tengo en un rhtml lo cargo y tengo la opción de añadir en la lista:
i = 0
items = @itemlist.clone
items.each { |item|
if i == 0 then
@itemlist = [Item.new(item.name)]
i = 1
else
@itemlist += [Item.new(item.name)]
end
}
@itemlist += [Item.new(params[:nombreItem])]

Aqui tengo mi primer problema. Ya q sólo puedo añadir uno a la lista.
Sabeis por qué??

Y el otro problema es cuando mando a otro rhtml la lista. Cómo puedo
hacerlo??
Ahora mismo lo hago así. Pero no se como sacar el nombre de los añadidos
a la lista posteriormente y unirlos al redirect_to

ckSobreElBar = false
ckDondeEstamos = false
ckContactar = false

if (@params[‘item’][‘Sobre el Bar’][‘1’]) then
ckSobreElBar = true
end
if (@params[‘item’][‘Dónde Estamos’][‘1’]) then
ckDondeEstamos = true
end
if (@params[‘item’][‘Contactar’][‘1’]) then
kContactar = true
end

if (ckSobreElBar) or (ckDondeEstamos) or (ckContactar) then
redirect_to :controller => ‘establishment_contents’, :action =>
‘list’, :itemlist => @params[‘item’]
end

Muchas gracias