Fare in modo che un ciclo for X in Y restituisca tutto ciò che viene restituito dalle istruzioni che contiene

StackOverflow https://stackoverflow.com/questions/1438632

  •  08-07-2019
  •  | 
  •  

Domanda

La seguente dichiarazione ...

content_tag(:li, concept.title)

... restituisce qualcosa del tipo:

<li>"My big idea"</li>

La seguente definizione del metodo, quando viene chiamata, restituisce lo stesso:

def list_of_concepts(part)
 content_tag(:li, concept.title)
end 

Come fa ...

def list_of_concepts(part)
 content_tag(:li, part.concepts.first.title)
end  

Ma quanto segue ...

def list_of_concepts(part)
  for concept in part.concepts
    content_tag(:li, concept.title)
  end
end  

... mi dà solo un mucchio di segni di cancelletto (" # ") a mio avviso, come se restituisse vero o falso o un conteggio piuttosto che qualunque content_tag ritorna. Come posso restituire ciò che content_tag restituisce?

Grazie ancora

Steven.

È stato utile?

Soluzione

il ciclo for non restituisce i tuoi dati, prova questo:

def list_of_concepts(part)
  part.concepts.map { |c| content_tag(:li, c.title) }.join
end
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top