En mi controlador Tengo el siguiente código simplificado:El uso de estructuras en Ruby on Rails da la asignación dinámica constante (SyntaxError)
def index
@dashboard_items = []
DashItem = Struct.new(:name, :amount, :moderated) # Error is here
[:page, :post].each do |c|
obj = c.to_s.capitalize.constantize
@dashboard_items << DashItem.new(c.to_s, obj.count, obj.count_moderated)
end
end
Pero Rubí da el siguiente error:
dynamic constant assignment (SyntaxError)
en la línea marcado arriba.
Que, AFAIK, significa que la constante DashItem
ya está definida. ¿Es esto correcto? ¿Y que hacer al respecto?
nota al margen: array vacío + each + append = map – tokland
posible duplicado de [Asignación dinámica constante] (http://stackoverflow.com/questions/6712298/dynamic-constant-assignment) –