嗨,大家好,我使用的是非常有用的寶石:https://github.com/nathanvda/cocoon如何在點擊link_to_add_association之後才顯示關聯字段?
我在這裏的目標是要顯示我的聯想領域,只有當我在link_to_add_association點擊。
當我加載我的表單頁面時,我不應該顯示字段。
有誰知道該怎麼做?
乾杯
文件部分
<h4><%= t('.title') %></h4>
<ul class="documents-list">
<%= f.fields_for :property_documents do |property_document_fields| %>
<% unless property_document_fields.object.new_record? %>
<%= render '/shared/properties/property_documents_list', f: property_document_fields %>
<% end %>
<% end %>
</ul>
<ul class="list-group property-documents">
<%= f.fields_for :property_documents do |property_document_fields| %>
<% if property_document_fields.object.new_record? %>
<%= render '/shared/properties/property_document_fields', f: property_document_fields %>
<% end %>
<% end %>
</ul>
<span class="pull-left">
<%= link_to_add_association t('.add_document'),
f,
:property_documents,
partial: 'shared/properties/property_document_fields',
class: 'btn btn-primary',
data: {
association_insertion_node: '.property-documents',
association_insertion_method: :append
} %>
</span>
文件字段
<li>
<%= link_to admin_property_path(@property.id, property: { property_documents_attributes: { id: f.object.id, "_destroy" => true }}), remote: false, confirm: "Really delete #{f.object.name} ?", method: :put do %>
<i class="fa fa-trash" style="padding-right: 10px; color: #d9534f;"></i>
<% end %>
<% if f.object.document.present? %>
<%= link_to f.object.name, f.object.document.url, target: :_blank %>
<% else %>
<%= link_to f.object.name, url_with_protocol(f.object.url), target: :_blank %>
<% end %>
</li>
已經這樣做了,如果你看到,我只顯示關聯字段,如果它是一個新的記錄。 –
你總是用''除非property_document_fields.object.new_record?'表達式或者什麼來顯示這個塊。如果你這樣做了,你需要刪除'build'方法 –
我確實顯示了只有當它是新記錄時才添加新關聯的表單,如下所示:
<%> = f.fields_for:property_documents do | property_document_fields | %> <%if property_document_fields.object.new_record? %> <%=渲染 '/共享/屬性/文檔/ property_document_fields',F:property_document_fields%> <% end %> <% end %>
–