是否有Ruby(最好)或Rails方法來檢查數組的第二個索引是否存在?如何使用Ruby和/或Rails檢查數組索引是否存在
在我的Rails(4.2.6)應用我在我的視圖下面的代碼,顯示了前兩個縮略圖的照片的數組:
<% if array.photos.any? %>
<%= image_tag array.photos.first.image.url(:thumb) %>
<%= image_tag array.photos[1].image.url(:thumb) %>
<% end %>
然而如果在陣列中沒有第二項,然後有一個錯誤
我已經試過以下if
語句使第二縮略圖有條件的渲染,但他們不工作:
<% if array.photos.include?(1) %>
<% if array.photos.second? %>
<% if array.photos[1]? %>
<% if array.photos[1].any? %>
我想另一種方法來得到我想要的只是檢查數組的長度
我還在想,如果Ruby(或Rails)有一種方法或方法來檢查數組中是否存在特定的索引或不。在此先感謝
編輯:爲了澄清我只是想表明陣列中的前兩個縮略圖,如果有的話
Wenceslao的回答是好。關鍵在於,在Ruby中,可以安全地訪問數組超出其概念大小。例如,對於數組'a = [1]',您可以檢查一個索引,如果沒有任何內容,它將返回'nil'。所以'array.photos [1] .nil?'是決定是否有任何東西的最簡單的方法。 – jaydel