Bonjour,

J'ai une page assez complexe, puisqu'elle contient des champs appartenant à plusieurs models (et à plusieurs tables). Tout ceci est encadré par une balise :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
<% form_tag :action => 'traiter_livraison' do %>
J'ai plusieurs boutons submit_tag pour enregistrer temporairement certaines données.
Je recupère la valeur de ces boutons avec params[:commit] dans traiter_livraison.
La première chose que je fais dans traiter_livraison, c'est d'enregistrer en table sessions toutes les données de ma page pour pouvoir ensuite les réafficher. Jusqu'ici ça marche bien.

J'affiche dans ma page la liste des lignes de livraison déjà saisies (mais non enregistrées dans la BDD), associées chacune à un bouton (image) d'édition et à un autre de suppression :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
<td><%= link_to_image 'edit', { :action => 'editer_ligne', :id => indice} %></td>
<td><%= link_to_image 'delete', { :action => 'supprimer_ligne', :id => indice},
                                :confirm => 'etc...' %></td>
Mon problème est le suivant :

Lorsque je clic sur l'image 'delete', je n'appelle pas l'action associée à form_tag et aucun des champs de ma page n'est transmis dans :params. (la ligne s'efface sans problème)

Si j'utilise un bouton submit_tag pour chaque ligne de livraison, je n'arrive plus à transmettre l'indice :id de la ligne dans :params.