Rails 3 fields_for - теряется порядок сортировки

Я использую Rails 3.0.3 с ruby ​​1.9.2p0.

В моем profile_controller (функция редактирования) есть этот вызов

@profile = Profile.find(params[:id])
@profile_items = @profile.profile_items.order("pos")

, чтобы элементы @profile_items располагались в правильном порядке, отсортированные по позиции. В _form.html.erb у меня есть следующее

<% @profile_items.each do |pi| %>
  <%= pi.pos %> | 
<% end %>
<%= f.fields_for :profile_items do |f2| %>
  <%= render 'profile_item_fields', :f => f2 %>
<% end %>

. 3 первые строки - это тестовый код, чтобы показать, что элементы @profile_items расположены в правильном порядке. Но когда они отрисовываются, они теряют порядок сортировки!

Теперь я много искал ответ, и я думаю, что это, должно быть, обычная «ловушка» для впадать в.

Благодарен за любую помощь ...

32
задан Petter Friberg 24 January 2019 в 21:46
поделиться