Rails: has_many association with a table in another database and without foreign key
Posted
by
Fernando
on Stack Overflow
See other posts from Stack Overflow
or by Fernando
Published on 2012-06-10T22:35:44Z
Indexed on
2012/06/10
22:40 UTC
Read the original article
Hit count: 231
Here is my situation. I have model called Account. An account can have one or more contracts. The problem is that i'm dealing with a legacy application and each account's contracts are stored in a different database.
Example:
Account 1's contract are in account1_db.contracts. Account 2's contract are in account2_db.contracts.
The database name is a field stored in accounts table.
How can i make rails association work with this?
This is a legacy PHP application and i simply can't change it to store everything in one table. I need to make it work somehow.
I tried this, but it didn't worked:
has_many :contracts, :conditions => [lambda{ Contract.set_table_name(self.database + '.contracts'); return '1' }]
Any ideas?
© Stack Overflow or respective owner