drapergem/draper — pull request #303 by haines (2012-10-11 23:43:41+00:00)
Title: Simplify ActiveModelSupport?

I don't really get why [`ActiveModelSupport`](https://github.com/drapergem/draper/blob/master/lib/draper/active_model_support.rb) is so complicated.

If I understand correctly (and it's quite likely that I don't!), the point is to proxy `to_param`, `errors`, and `id` to the model, provided they are defined on the model but not on the decorator. But isn't this exactly what Draper does with any other method?!

Granted, `to_param` is defined on `Decorator` thanks to ActiveSupport, so it won't be delegated out of the box, but surely it can be made to just by explicit delegation.

If I strip it back to basics, leaving just what you see in this pull request, all the specs stay green!

I must have gotten the wrong end of the stick, right?