Ich habe lernen Rails gerade erst begonnen und ich versuche, einen Beitrag/wie Typ-Funktion zu bauen. Ich habe es funktioniert, aber es muss einen effizienteren Weg geben, es zu tun.Rails 3 - Optimieren form_for in Index und zeigt Ansichten
Mein Postindex Ansicht enthält den folgenden Code (I jQuery bin mit der Form über Ajax einreichen):
<% @posts.each do |post| %>
<%= form_for([post, post.likes.build]) do |f| %>
<%= f.hidden_field :user_id, :value => current_user.id %>
<%= f.hidden_field :post_id, :value => post.id %>
<%= f.submit pluralize(post.likes.count, 'Like'), :class => 'like like-' + post.id.to_s %>
<% end %>
<% end %>
Meine Show Ansicht enthält folgende Komponenten:
<%= render "likes/form" %>
Welche enthält die folgende:
<%= form_for([@post, @post.likes.build]) do |f| %>
<%= f.hidden_field :user_id, :value => current_user.id %>
<%= f.hidden_field :post_id, :value => @post.id %>
<%= f.submit pluralize(@post.likes.count, 'Like'), :class => 'like like-' + @post.id.to_s %>
<% end %>
Das alles funktioniert mit jQuery kombiniert und Links zerstören. Zwei unterschiedliche Formen zu haben, scheint allerdings etwas schwer zu sein. Irgendwelche Ideen zur Veränderung/Optimierung oder den besten Weg dies zu tun?
Danke.
Warum sind vorbei Sie 'post_id' als hidden_field? Es wird durch deinetwegen automatisch weitergeleitet werden, um eine verschachtelte Formular ('[@post, @ post.likes.build]') –
Hey Ryan, ich versteckte Felder nicht mehr vorbei, gereinigt es ein gutes Stück mit Hilfe up von @mark und @pjammer. – Goldy