I've just completed BerkeleyX CS169.1x (Software as a Service)[1] that teaches Rails and I haven't found it to be painful at all. I'm sure that I'm no expert, but I am competent enough to be building a Rails app of my own that utilizes most of the concepts in the OP. The best way to learn it (IMHO) is to just jump in and do a project, learning as you go. I can see how learning web development from scratch with Rails could be challenging, but that could be said for any web stack.
[1] https://www.edx.org/courses/BerkeleyX/CS169.1x/2013_Spring/s...