0

私は宝石のランク付けされたモデルを使用しています: https://github.com/mixonic/ranked-model

ユーザーがバックオフィスで記事を注文できるようにするために使用したいと考えています。

私が宝石から理解していることから、DBに格納された値は、要素を数え始めた場合の実際のランクである _position とは異なります。

画像の配列がある場合は、それらを表示し、それらの位置を 1 ランク上げたり下げたりしたいと考えています。私はrow_order_position +1または-1を行います。しかし、私は彼らのrow_order_postionを知ることができず(nilを返します)、row_orderだけを知りません。

私の質問は次のとおりです。row_order_position がわからない場合、row_order_position で変更できるのは何ですか?

4

1 に答える 1

0

私もこれは少し奇妙だと思いますが、配列を反復処理している場合、回避策の 1 つはeach_with_index. このようにして、位置をどこかに (たとえば非表示のフィールドに) 保存し、記事の再配置を実行するときに新しい位置 + または - 1 を渡すことができます。

# Something like this
<% Article.each_with_index do |article, index| %>
  <%= render :partial => 'article', :locals => {:article => article, :position => index} %> 
<% end %>
于 2013-09-23T14:00:20.590 に答える