Once you’ve learned the basics, I think the best way to learn Ruby on Rails is to look at apps written in Rails and learn from their source. The nice thing about Rails is that once you’re familiar with one application, you can pretty much open any Rails app and understand the structure enough to know where to go to look for the code that is relevant to what you’re learning.
This is a list of apps that have been helpful to me for learning.
1. Devalot – I wouldn’t have guessed it, but this is the one where I’ve found what looks to me to be the best code and some of the most interesting use of plugins. Check out the table_maker plugin in the app–it’s amazing! Devalot is DRY. If nothing else it’s a great example of DRY programming in Rails.
3. RadiantCMS – Radiant like an example of simple code that works well. Radiant is fairly easy to understand and this makes it good to learn from. One interesting thing in RadiantCMS is their use of behaviors which are based on Radius.
That’s it. Check ‘em out.