This is my first post here. Comments on style, etc., are appreciated. An answer is even more appreciated.
This is a continuation of my question at https://stackoverflow.com/questions/44856528/how-to-trace-a-html-button-non-event-rails-authorization-with-pundit The problem: Figure 1: I have a form: The first time I visit this page, everything seems to work. I can click on "Change Role" and update the appropriate row in the Postgres table. I can do it as many times as I like with no problems. If I click on, for instance, [email protected] (highlighted in yellow), I get to the following page: Figure 2: The above is just fine. If I click on Users on the upper right, I return to the webage denoted as Figure 1. Now things get, hmm, (un)interesting. When I click on Change Role, nothing happens. I have hooked up Wireshark and I am almost 100% sure I see no Post going out when I click on Change Role. I am pretty sure I see no outbound http when I click on Change Role *If I refresh the page, Change Role starts working again!*I am clueless where to look or what is going on. app/controllers/users_controller.rb class UsersController < ApplicationController # See https://stackoverflow.com/questions/16519828/rails-4-before-filter-vs-before-action # "As we can see in ActionController::Base, before_action is just a new syntax for before_filter" before_action :ralph_before_action after_action :ralph_after_action before_filter :authenticate_user! after_action :verify_authorized def index # byebug if ralph_test_byebug @users = User.all authorize User end def show byebug if ralph_test_byebug @user = User.find(params[:id]) authorize @user end def update # byebug # if ralph_test_byebug @user = User.find(params[:id]) authorize @user byebug # if ralph_test_byebug if @user.update_attributes(secure_params) redirect_to users_path, :notice => "User updated." else redirect_to users_path, :alert => "Unable to update user." end end def destroy user = User.find(params[:id]) authorize user user.destroy redirect_to users_path, :notice => "User deleted." end private def secure_params params.require(:user).permit(:role) end def ralph_before_action # byebug xyz=123 end def ralph_after_action # byebug xyz=123 end end app/views/users/index.html.erb <div class="bigbox"> <div class="box"> <table class="table-minimal"> <tbody> <% @users.each do |user| %> <tr> <%= render user %> </tr> <% end %> </tbody> </table> </div> </div> app/views/users/_user.html.erb <td> <%= link_to user.email, user %> </td> <td> <%= form_for(user) do |f| %> <%= f.select(:role, User.roles.keys.map {|role| [role.titleize,role]}) %> <td> <button><%= f.submit 'Change Role' %></button> </td> <% end %> </td> <td> <%= link_to("Delete user", user_path(user), :data => { :confirm => "Are you sure?" }, :method => :delete, :class => 'button') unless user == current_user %> </td> -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/7fad56bb-534c-43d6-883a-7049d3e87105%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.

