Bonjour en ce moment j'ai un problème à propos button_toRuby on Rails - button_to en utilisant les routes pour appeler la fonction de contrôleur
Je veux installer un bouton qui appelle une méthode dans le contrôleur, voici comment je configurer le bouton:
(ce situé dans les questions/_edit.html.erb)
<%= button_to "Cancel Return", :action => "cancel_return", :controller => "issues" %>
et je veux que ce appellera cette fonction dans issues_controller.rb
def cancel_return
@issue.cancel_return(params)
end
J'ai également ajouté dans le routes.rb
map.issue_cancel_return 'issues/cancel_return', :controller => 'issues',
:action => 'cancel_return'
mais il ne peut pas travailler, je l'ai déjà essayé de déclarer cancel_return comme helper_method, mais aussi ne fonctionne pas. N 'y a-t-il pas une autre solution? ou je le fais mal? J'utilise la version 1.9.3p125 de ruby et la version 2.3.15 de rails, j'ai employé l'ancienne version parce que j'ai essayé de modifier le redmine, n'importe quelle aide sera appréciée.
Merci
questions # cancel_return une route valide? Je n'ai pas vu les routes de redmine.rb mais avez-vous aussi la nouvelle action en dehors de l'ajouter dans le contrôleur? – roninblade
@roninblade en fait je ne suis pas sûr de savoir comment le mettre dans les routes.rb, je l'ai ajouté comme ceci map.issue_cancel_return 'issues/cancel_return',: controller => 'issues', : action => 'cancel_return' , vous pouvez également le voir dans la question éditée –
ce qui se passe quand vous appelez l'action directement sur votre navigateur? c'est à dire. http://127.0.0.1:3000/issues/cancel_return/?plus_your_extra_params – roninblade