How to add confirm message with link_to Ruby on rails
Solution 1:
I might be mistaken but you don't specify a controller along with the :action
option. Have you tried the following? Assuming you have a messages
resource configured in your route:
link_to 'Reset', message_path(@message), :confirm => 'Are you sure?'
EDIT: Above is deprecated. Rails 4.0 now accepts the prompt as a data attribute. See the doc here (Thanks @Ricky).
link_to 'Reset', message_path(@message), :data => {:confirm => 'Are you sure?'}
Solution 2:
First, you should verify that your layout have jquery_ujs. Best practice to do it by including it in your main application.js:
//= require jquery_ujs
Check that you included application.js in your layout:
= javascript_include_tag :application
While, in development mode, view your source html and verify jquery_ujs.js exists.
Run your server and verify your link tag has data-confirm value, for example:
<a href="/articles/1" data-confirm="Are you sure?" data-method="delete">
If all those steps are correct, everything should work!
Note: check this RailsCast http://railscasts.com/episodes/136-jquery-ajax-revised
Solution 3:
Can't remember how this was done in Rails 3, but in Rails 4 you can simply:
<%= link_to 'Reset message', { controller: 'your_controller', action: 'reset' }, data: {confirm: 'Are you sure?'} %>