Rails before_filter and action identification

sameera207 picture sameera207 · Apr 19, 2010 · Viewed 7.9k times · Source

I want to write a before_filter in my controller to identify the action which will execute next. This is for authorization purposes (this is somewhat like role_requirement plugin do..)

Ex: if a user types this url http://localhost:3000/users, default it goes to users/index action. And in my users controller i'm having a before filter method say 'check_permission' and i want that method to get 'index' as the action.

Answer

Steve Madsen picture Steve Madsen · Apr 30, 2010

The action_name method on the controller should give you what you're looking for. It's not documented, though, so there is no guarantee it won't disappear someday.

before_filter { |controller| logger.debug "Running before the #{controller.action_name} action" }