J'essaie de créer une application Ruby on rails en utilisant l'effet de glisser-déposer intégré de Scriptaculous.
Comme je suis nouveau dans le langage ruby, j'ai trouvé ce code en consultant de nombreuses documentations mais je ne comprends pas pourquoi le code du contrôleur n'est pas exécuté.
Dans la page html.erb le div d'origine
<% for therm in @therms %>
<tr valign="top" class="<%= cycle('list-line-odd', 'list-line-even') %>">
<td>
<% therm_id = "therm_#{therm.id}" %>
<li class="origin" id='<%= therm_id %>'><%= therm.id %></li>
</td>
La cible
<%= image_tag "dragtrash.png", :id=>'trash'%>
Et j'identifie la cible de la chute
<%= drop_receiving_element('trash',
:accept => 'origin',
:complete => "$('spinner').hide();" ,
:before => "$('spinner').show();" ,
:hoverclass => 'hover',
:with => "'paramid=' + encodeURIComponent(element.id.split('_').last())" ,
:url => {:action=>:trash_therm})%>
Et enfin dans mon contrôleur
def trash_therm
redirect_to(:action => 'create')
end
Lorsque je dépose l'objet dans la cible, le contenu déposé reste collé à la cible. Si la cible n'avait pas "attrapé" l'élément, il serait revenu à sa position initiale. Je ne comprends pas pourquoi le code dans le contrôleur n'est pas exécuté.
Merci d'avance pour votre aide