2013-11-28 126 views
0

我有這樣的代碼在自己的看法Ruby on Rails的:怪異陣列輸出

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

而在我的控制器,我通過它的參數

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

我希望它打印出來的承銷商和高級版,它會這樣做,但是由於某種原因它在最後標記了整個陣列。這顯示如下

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 - 調用給定塊一次自我的每個元素,通過該元素作爲參數。當iteartion完成時,返回self<%= %>打印什麼是在標籤內之間進入ERB文件,而<% %>執行括號內的Ruby代碼。

檢查這一個Rails, ERB syntax也。

+0

歡呼聲的澄清。 Pesky =標識 – DTC

+0

很好的解釋。謝謝 – unknownbits