2016-04-16 5 views
1

Ich möchte link_to_remove zu nur letzte Daten hinzufügen. Der folgende Code hat link_to_remove für alle Daten.So fügen Sie einen Link nur zu den letzten Daten hinzu mit simple_fields_for

<%= f.simple_fields_for :tests do |t| %> 
    ... 
    <%= t.link_to_remove "Remove" %> 
<% end %> 

Mein Bild ist last? wie

<%= f.simple_fields_for :tests do |t| %> 
    ... 
    <% if t.last? %> 
    <%= t.link_to_remove "Remove" %> 
    <% end %> 
<% end %> 
+0

Können Sie die 'forms_for' zeigen, das erscheint vor den 'einfachen_feldern_for'? – SteveTurczyn

Antwort

2

Stellen Sie sicher, das Testobjekt zu verwenden, ist der letzte Test des übergeordneten Objekts

f.simple_fields_for :test do |t| 
    # ... 
    t.link_to_remove("Remove") if t.object == f.object.tests.last 
end 
+0

Spot on, Sie möchten 't.object' verwenden, da' t' die Formu- lierinstanz ist - nicht die tatsächliche umge- ballte Modellinstanz. – max

+0

Vielen Dank für Ihre Antwort, @SteveTurczyn. Es klappt! – SamuraiBlue

Verwandte Themen