On 4 April 2012 12:13, rme <[email protected]> wrote: > Hi folks, > > Rails beginner here.. > > I have a users resource where I implemented a callback that's supposed > to prevent an admin user from deleting herself. > > before_filter :admin_no_delete, only: :destroy > > def admin_no_delete > admin_id = current_user.id if current_user.admin? > redirect_to users_path if params[:id] == admin_id > end > > If this looks familiar to some, it's from Michael Hartl's rails > tutorial, exercise #10 here > http://ruby.railstutorial.org/chapters/updating-showing-and-deleting-users?version=3.2#sec:updating_deleting_exercises > > My (lame) test for this actually runs successfully > > describe "deleting herself should not be permitted" do > before do > delete user_path(admin) > end > it { should redirect_to(users_path) } > end > end > > The test seems lame because I was able to go around it using jQuery to > delete the record being protected by the callback (using Web > Inspector's javascript console): > $.ajax({url: 'http://localhost:3000/users/104', type: 'DELETE', > success: function(result){alert(result)} })
What was current_user when you did that? I note that your code will only stop the admin user deleting herself, it will not stop another user from deleting the admin user. Colin -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.

