I have built quite a few rails apps using TR. The braintree ruby gem makes the whole process very easy. I would hesitate in using this because you still end up explaining a lot to during PCI compliance. IIRC during the PCI compliance my customers had to do a whole lot of work even when we were using TR. Splitting your process into multiple steps and doing validation using JS is much much easier IMHO.
The compliance process varies depending on how the business operates. There are more controls if you accept card numbers over the phone, for example. For most merchants, the process is straightforward. Our PCI Compliance page describes the process using Braintree.js.
If anyone is using this, I'd love to hear about their experience. We default to recommending Stripe to our customers, but will probably need to offer Braintree support in the future as well (in case they already have a Braintree account and want to use that instead of creating a new Stripe account).
Perhaps Spreedly Core might be interesting if you need to support multiple payment gateway options. core.spreedly.com - I work at Spreedly. BTW we're making some signficant changes to the site/pricing in about 10 days so if it's interesting to you at all email justin @ spreedly to talk further.