2013-06-11 10 views
12

Ho un leggero problema con l'aggiunta di dati nell'array e l'aggiunta di dati.Rails - aggiunge gli attributi e aggiunge all'array

Ecco il mio codice

@order.orderdesc ||= [] 

@cart.line_items.each do |item| 
@order.orderdesc += item.quantity + "x" + item.product.title 
end 

voglio solo aggiungere item.quantity e item.product.title. Sono accessibili.

Grazie

risposta

15

Se si desidera aggiungere "roba" in una matrice, il += non è fatta per questo. È possibile utilizzare l'operatore di << (aggiungere alla fine della matrice):

@order.orderdesc ||= [] 

@cart.line_items.each do |item| 
@order.orderdesc << item.quantity + "x" + item.product.title 
end 

Oppure si può utilizzare .push():

@order.orderdesc ||= [] 

@cart.line_items.each do |item| 
@order.orderdesc.push(item.quantity + "x" + item.product.title) 
end