I agree with your point.
Put them all in one action, in fact it is not so dry. Processing parameters with a condition, preparing a template name, preparing query strings in a view, all of them need unnecessary code comparing with split actions.
Other drawbacks are filters and activity messages. Dividing into several actions, action_name is different, and then you can send another message.
For example, I have one application that has a vote method for one model. I ended up using vote_up and vote_down , because only a registered user can vote, and then fix action_name can be sent to CanCan.
source share