I’d like to join two tables without using the primary key on either.
Let’s say I have the following tables:
/items
id
name
item_other_key
/item_links
id
link_id
item_other_key
created_at
I’d like to say
item_link belongs_to :item, :foreign_key => ‘item_other_key’
But Rails decides to join on (item_links.item_other_key = items.id)
instead of (item_links.item_other_key = items.item_other_key).
The data is coming from an external source, which is why I need to use
external keys. My workaround right now is to just do the join manually
with a find_by_sql. Am I missing a clean Railsy way to accomplish this?