Je suis sur Rails 2.3.3, et j'ai besoin de créer un lien qui envoie une requête de poste.
J'en ai un qui ressemble à ça :
=link_to( 'Resend Email', {:controller => 'account', :action => 'resend_confirm_email' }, {:method => :post} )
Ce qui fait le comportement JavaScript approprié sur le lien :
<a href="http://stackoverflow.com/account/resend_confirm_email" onclick="var f = document.createElement('form'); f.style.display = 'none'; this.parentNode.appendChild(f); f.method = 'POST'; f.action = this.href;var s = document.createElement('input'); s.setAttribute('type', 'hidden'); s.setAttribute('name', 'authenticity_token'); s.setAttribute('value', 'EL9GYgLL6kdT/eIAzBritmB2OVZEXGRytPv3lcCdGhs='); f.appendChild(s);f.submit();return false;">Resend Email</a>'
L'action de mon contrôleur fonctionne et est configurée pour ne rien rendre :
respond_to do |format|
format.all { render :nothing => true, :status => 200 }
end
Mais quand je clique sur le lien, mon navigateur télécharge un fichier texte vide nommé "resend_confirm_email".
Qu'est-ce qui se passe ?