I'm not really sure, there's an O'reilly book "Metaprogramming Ruby" (http://oreilly.com/catalog/9781934356470) which i flicked through once. It seemed to mostly dicuss how ActiveRecord works. At the point I had access to a copy I was already pretty familiar with the concepts, so can't really say how good the book actually is.
I mostly picked things up by reading code and some blog posts whenever I came across an odd idiom.
I mostly picked things up by reading code and some blog posts whenever I came across an odd idiom.