[OK]を位置番号を持つ最初のアイテムを見つけたので、私はよく分からないどのように単語にこのしかし:オブジェクトの配列をループして
私はアルバムの配列を持ち、かつ各アルバムは、多くの画像を持っています。私はルビーの宝石acts_as_list
を使って、ユーザーがアルバム内の画像を並べ替えることができるようにしているので、それぞれの画像には位置があります。ソートを行う方法は、アルバム画像と非アルバム画像の間で設定することです。すべてのアルバムに1の位置の画像があるわけではありません。
私がやりたいことは、すべてのアルバムを一覧表示し、そのアルバムの最も早い位置にある画像のみを表示することです。しかし、最初の位置を見つけるための位置に関する方法はありません。
<% @albums.each do |i| %>
<li class="box sortable_object" style="float:left; margin: 0.5em;" id="album_<%= i.id %>">
<span class="handle">[drag me!]</span>
<% unless i.tattoos.empty? %>
<%= image_tag i.tattoos.first.file.url(:small) %><br />
<% end %>
</li>
<% end %>
しかし、それは単にイメージテーブル内の位置ではなく、その位置番号に基づいて、アルバムの最初の画像を検索します。ここでは
は、私が今持っているものです。関連付けを宣言するときは、order
句を指定することができます
アルバムのリストが1から始まっていないアルバムはありますか?これは、要素が手作業で操作された場合にのみ発生します。以前は、同期から外れたリストの番号を変更するために、 "re-order"メソッド(acts_as_listにパッチを適用)を使用しました。 – Pavling