Насколько я знаю, невозможно сделать именно то, что вы просите в Rails, но вы можете эффективно выполнить то, что вы пытаетесь достичь, с помощью второй модели, используя обратные вызовы и ассоциацию has_one, для пример:
class Widget < ActiveRecord::Base
has_one :thingy
before_save :save_thingy_object
def save_thingy_object
self.thingy = Thingy.new({ :attr1 => 'some', :attr2 => 'thing' })
end
end
class Thingy < ActiveRecord::Base
belongs_to :widget
end