I'm fairly new to the Rails community and recently faced a similar situation. First from what you describe, CanCan will most certainly provide the functionality you desire.
Secondly, there is a nice screencast at Railscasts.com that provides a good introduction, however some of processes in the screencast have been updated/modified in more recent versions of the gem, so be sure to go by the github documentation vs. the example in the screencast. Thirdly, I would describe the learning curve for the CanCan gem as moderate. I have a fairly complex use case and my CanCan Abilities class has gotten a little large. However, I've been amazed that each time I initially thought CanCan was in error, when I worked it through, CanCan was accurate. Also, I was worried about a performance hit, but so far have not seen anything that indicates CanCan will not scale. Highly recommended gem from my standpoint. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To view this discussion on the web visit https://groups.google.com/d/msg/rubyonrails-talk/-/-GdK4uTS2YoJ. 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.

