2011-09-02 24 views
1

基本上我的控制器就可以抓取所有成員:@members = Member.all和Im通過他們循環,同時檢查,看看他們是否有一個資料圖片上傳,如果沒有,則默認應加載:這個else if語句有什麼問題?

<% @members.each do |member| %> 
    <% unless member.image.nil? %> 
     <li style="float:left; width:100px;"> 
     <%= image_tag(member.image.url(:tiny)) %> 
     <%= link_to member.email, member_path(member) %> 
     </li> 
     <% else %> 
     <li style="float:left; width:100px;"> 
     <%= image_tag("default_member_small.jpg") %> 
     <%= link_to member.email, member_path(member) %> 
     </li> 
    <% end %> 
<% end %> 

它似乎認爲每個成員都有一個配置文件映像,並且映像標記爲缺少的映像調用「images/tiny/missing.png」。

什麼給?

回答

1

我猜你正在使用回形針,如果你是,你不應該使用零?,你應該使用禮物?

<% @members.each do |member| %> 
    <% if member.image.present? %> 
     <li style="float:left; width:100px;"> 
     <%= image_tag(member.image.url(:tiny)) %> 
     <%= link_to member.email, member_path(member) %> 
     </li> 
     <% else %> 
     <li style="float:left; width:100px;"> 
     <%= image_tag("default_member_small.jpg") %> 
     <%= link_to member.email, member_path(member) %> 
     </li> 
    <% end %> 
<% end %> 

而不是有一個,如果你應該只是有這個圖片命名爲回形針期望它,不應該在你的代碼中的任何IFS這類事件的處置。

+0

哎呀,那是真的,現在已經修好了。 –

+0

哎呀,我忘了提到我用回形針。那樣做了,謝謝! – rugbert