The first resource I used was michael Hartl's video tutorials. I cannot speak highly enough of these videos but they tend to be more valuable as I get more experienced. I got the videos but you can get all of the content for free in the e-book as well. http://ruby.railstutorial.org/ruby-on-rails-tutorial-book
Stack Overflow. Whenever I get really stuck I post a question to the forums here and there is usually a response within an hour. It is a wonderful resource. I do advise that you spend plenty of time researching and trying to solve the problem on your own before posting to the web. Most of the best learning progress I have had, came from working on problems. That's where you develop real understanding. I often quickly mock up entirely separate rails apps just to isolate a problem. It is great practice. http://stackoverflow.com
Here's an excellent video from Treehouse about using has_many :through. It explains the many to many relationship between two models and also the many-to-many relationship from a model to itself. This is like Twitter where a User model is used to define users but follower are also Users. It's all explained in the video.