Initializing aggregated structures

I have a model, Vendor, which belongs_to :account, :visiting_address.
(1…1 for both)

Now, to ‘prevent redundancy’/inconsistencies, the Vendor model doesn’t
have a name attribute, but instead stores it’s name in
(Should probably be the other way around, but that’s messier)

My controller goes something like this:

@vendor = => whatever)

While vendor has the following methods:

def initialize(*args) # param look reasonable, btw? seems to be
working atm, but…
self.account ||=
self.visiting_address ||=

def name=(name)
self.account ||= = name

Not the best way to go around this, I’m sure…? Suggestions?