Il s'agit d'un projet Rails 3 utilisant jQuery 1.4.4.Rails 3: Comment ajouter une ligne complexe à une table en utilisant UJS?
J'ai une action d'index qui affiche une liste des ressources d'une table, avec un lien « Destroy » comme vous obtiendrez d'un échafaudage:
<tr id="showcase_item_<%= showcase_item.id %>" class="<%= cycle(' alt','') %>">
<td><%= displayable.identifier %></td>
<td><%= escape_javascript(link_to 'Remove', showcase_item, :confirm => 'Remove this item from your Showcase?', :method => :delete, :remote => true) %></td>
</tr>
Sur ce point de vue index J'ai aussi un peu la forme qui fait un AJAX « créer » pour la ressource, et j'utilise Javascript pour ajouter la ressource à la table dans mon create.js.erb:
$("#showcase tr:last").after("<tr id=\"showcase_item_<%= @showcase_item.id %>\" class=\"<%= cycle(' alt','') %>\"> \
<% displayable = @showcase_item.displayable %> \
<td><%= displayable.identifier %></td> \
<td><%= link_to 'Remove', @showcase_item, :confirm => 'Remove this item from your Showcase?', :method => :delete, :remote => true %></td></tr>")
C'est fragile, hideux, et non DRY. Comment puis-je faire ça?
Quelle est la manière Rails de le faire?
J'apprécie n'importe quelle aide ou conseil que vous pouvez fournir!
Wow, c'est propre. C'est amusant, merci Kevin. – AKWF
@AKWF Pas de problème. Ruby on Rails peut être extrêmement propre une fois que vous en avez pris connaissance (bien que le code ci-dessus ne fonctionne pas). –