В нашем приложении rails 3.1.0 есть rfq, quote и test_item. В Запросе предложений много цитат и тестовых заданий. Цитата принадлежит rfq и имеет много тестовых заданий. Тестовый элемент имеет много предложений и кавычек.
При создании предложения тестовые позиции в rfq передаются непосредственно в новую форму предложения. Вот код нового контроллера в кавычках:
@quote = @rfq.quotes.new()
@quote.test_items << @rfq.test_items
Вот код представления в новой форме цитаты для отображения тестовых заданий, переданных из rfq:
<%= simple_form_for([@rfq, @quote]) do |f| %>
....
<% @quote.test_items.each do |t| %>
<p><%= f.association :test_items, :label => false %><%= link_to_remove_fields "remove", f %></p>
<% end %>
....
<% end %>
Приведенный выше код представления может отображать тестовый элемент, переданный из rfq, и поддерживать связь (в кавычках много тестовых элементов), что и нужно приложению. Однако он также отображает поле выбора для тестового элемента, который здесь не нужен (не может изменить тестовый элемент в кавычках, кроме удаления. Также t в цикле не был полезен). Нам нужно только отобразить имя тестовых элементов, сохранить связь (в кавычках содержится много тестовых элементов) и разрешить удаление тестового элемента (выполняется с помощью link_to_remove_fields).
Есть ли чистый способ сделать это? Большое спасибо.