def setup(model)
model.associations_module.module_eval "def \#{name}\nget_proxy(associations[\#{name.inspect}])\nend\n\ndef \#{name}=(value)\nget_proxy(associations[\#{name.inspect}]).replace(value)\nvalue\nend\n"
association = self
options = self.options
model.before_destroy do
if !association.embeddable?
case options[:dependent]
when :destroy
self.get_proxy(association).destroy_all
when :delete_all
self.get_proxy(association).delete_all
when :nullify
self.get_proxy(association).nullify
end
end
end
end