2013-11-28 3 views
0

나는 내가 그것이업자를 인쇄 할 것으로 예상루비 : 이상한 배열 출력

@quotes = [{underwriter:"dtc",premium:500},{underwriter:"abc",premium:800}] 

그것에게 인수를 전달 내보기

<%= @quotes.each do |f| %> 
    <%=f[:underwriter]%>: £<%=f[:premium]%> 
    <br> 
<% end %> 

그리고 내 컨트롤러의에이 코드를 및 프리미엄, 그러나 그것은, 어떤 이유로 전체 배열 끝에 태그를 지정합니다. 아래에 표시됩니다

dtc: £500 
abc: £800 
[{:underwriter=>"dtc", :premium=>500}, {:underwriter=>"abc", :premium=>800}] 

누구든지이 동작의 원인을 알려줄 수 있습니까? 매개 변수로 해당 요소를 통과, 자기의 각 요소에 대해 한 번 주어진 블록을 호출 -

+0

첫 줄에서'='를 제거하십시오. 설명을 위해 – Aguardientico

답변

2

그냥

<% @quotes.each do |f| %> 
    <%=f[:underwriter]%>: £<%=f[:premium]%> 
    <br> 
<% end %> 

Array#each 할. 완료되면 self을 반환하십시오. <%= %>은 erb 파일에 태그 안의 내용을 인쇄하는 반면, <% %>은 대괄호 안에 루비 코드를 실행합니다.

이 항목을 선택하십시오. Rails, ERB syntax.

+0

건배하십시오. 성가신 = 부호 – DTC

+0

좋은 설명. 고맙습니다. – unknownbits