Ошибка с гемом nested_form: неправильное количество аргументов (4 из 3)

Я борюсь с этим несколько дней и не могу понять, что случилось. Я пытаюсь разрешить прикрепление полиморфных файлов к модели Item , которая принадлежит модели Location . Мои маршруты определены как:

resources :locations do
  resources :items
    post :sort
end

resources :items do
  resources :assets #model for attachments
end

Я следовал руководству о том, как делать именно это с carrierwave и nested_form . Однако после настройки я получаю следующую ошибку при запросе действия New для модели Item : неправильное количество аргументов (4 вместо 3) . Он сообщает мне, что ошибка возникает в строке 7 этого представления:

<%= nested_form_for [@location, @item], :html => { :multipart => true } do |f| %>
  

<%= f.label :name %>
<%= f.text_field :name %>

<%= f.fields_for :assets do |a_form| %> ### LINE 7 ####

<%= a_form.label :file %>
<%= a_form.file_field :file %> <%= a_form.hidden_field :file_cache %>

<%= a_form.link_to_remove "Remove this attachment" %> <% end %> <%= f.link_to_add "Add attachment", :assets %>

<%= f.submit %>

<% end %>

Если я не использую гем nested_form и запускаю представление с нормальной form_for , я не получаю ошибок и могу успешно прикрепите один файл к элементу . Я могу попробовать продолжить работу без драгоценного камня, но (насколько я понимаю) nested_form автоматизирует некоторые функции, такие как удаление файлов и создание ajax для добавления новых вложений.

Мне просто интересно, сталкивался ли кто-нибудь с этой ошибкой или знает, какую ошибку я делаю, вызывая проблемы с nested_form? Я понимаю, что означает ошибка, но не уверен, где / почему добавлен дополнительный аргумент.Я очень ценю любую информацию, которую вы можете предоставить!

К вашему сведению, мои настройки разработчика: rails (3.1.0, 3.0.10), nested_form (0.1.1), carrierwave (0.5.7)

6
задан Denny 24 September 2011 в 18:38
поделиться