У меня есть следующий сценарий:
модель cmsasset, которая является контейнером для изображения с использованием скрепки для загрузки и хранения, модель местоположения, которая может иметь прикрепленные cmsassets в подходе таблицы соединений habtm
location принимает вложенные атрибуты для cmsassets. Вот точный код модели:
accepts_nested_attributes_for :cmsassets, :allow_destroy => true
теперь, когда я пытаюсь использовать следующее в моем коде формы, вложенная форма не отображается:
<%= form_for @location do |f| %>
<%= render 'shared/error_messages', :target => @location %>
<p>Name<br />
<%= f.text_field :name %></p>
<p>Description<br />
<%= f.text_area :description %></p>
<p>Location Tags (Separated by a Comma)<br />
<%= f.text_field :tag_names %></p>
<%= render :partial => 'shared/contact_info_form', :locals => {:f => f} %>
<p>Splash Image:<br />
<%= f.fields_for :cmsassets do |cmsasset_form| %>
<%= cmsasset_form.number_field :client_id, :type => 'hidden', :value => session[:current_client] %>
<p>Image Name:<br />
<%= cmsasset_form.text_field :name %></p>
<p>Description:<br />
<%= cmsasset_form.text_field :description %></p>
<p><%= cmsasset_form.file_field :attachment %><br />
<%= cmsasset_form.text_field :cms_asset_type, :type => 'hidden', :value => 'Splash' %></p>
<% end %></p>
<p>Display Address:<br />
<%= f.text_field :display_addr %></p>
<p>Latitude<br />
<%= f.number_field :latitude %></p>
<p>Longitude<br />
<%= f.number_field :longitude %></p>
<p>Trigger Radius<br />
<%= f.number_field :trigger_radius%></p>
<p>Published >> <%= f.check_box :published %></p>
<p>Expiration Date<br />
<%= f.text_field :expiration_date %></p>
<br />
<%= f.submit "Save" %>
Однако, когда я делаю cmsassets единичными в вызове вложенной формы, он рендерится, но не работает, очевидно, из-за структуры данных habtm ...
Что сумасшедшего, так это то, что этот подход работает с использованием гема nested_form, за единственным исключением скрепки, которая в этом случае вызывает сбой, потому что мы используем динамические стили на уровне модели.
если кто-нибудь сможет пролить свет на любой из этих вопросов, мне было бы очень интересно услышать некоторые идеи!