Hi,

I've created a patch for composed_of here:
http://rails.lighthouseapp.com/projects/8994/tickets/892-composed_of-constructor-and-converter-options

As summarised in the ticket:

1. It adds a new :constructor option that takes a symbol or a proc
that will be used to instantiate the aggregate object. It is optional
and if not used then the existing behaviour of calling new with the
mapped attributes will be used.

2. It deprecates the use of a block to provide a method of converting
values assigned to the aggregate attribute. The use of a block didn’t
feel particularly consistent with the rest of Rails where typically
symbols or procs are passed as options (a good example being the :if
and :unless options for validations). Of course passing a block will
still function, so existing code won’t break, but it will raise a
deprecation warning. This change leads on to…

3. It adds a new :converter option that also takes a symbol or proc
that will be used when the aggregate attribute is assigned a value
that is not an instance of the aggregate class. This replaces the old
block syntax and makes it easier to do things like calling composed_of
from within a with_options block. If both the :converter option and a
block are passed to composed_of then the :converter option will take
precedence.

Feedback or, even better, +1's appreciated...

Thanks,
Rob
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Core" group.
To post to this group, send email to rubyonrails-core@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-core?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to