# Belongs\_to su database legacy

**URL:** <https://www.ruby-forum.com/t/belongs-to-su-database-legacy/153558>\
**Category:** IT\
**Created:** [November 18, 2008, 7:32pm UTC](https://www.ruby-forum.com/t/belongs-to-su-database-legacy/153558 "2008-11-18T19:32:13Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![sdpurtill](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/77aa72/32.png) [@sdpurtill](https://www.ruby-forum.com/u/sdpurtill)\
**Post date:** [November 18, 2008, 7:32pm UTC](https://www.ruby-forum.com/t/belongs-to-su-database-legacy/153558/1 "2008-11-18T19:32:13Z")

</div>

Salve a tutti

Ho un database legacy con due tabelle, diciamo tabella1 e tabella2.  
Tabella1 ha un campo “campo1” e tabella2 ha un campo “campo2”, che  
corrisponde a “campo1” di tabella1. Ora per fare un join di queste due  
tabelle da SQL faccio:

select \* from tabella1 inner join tabella2 on tabella1.campo1 =  
tabella2.campo2

Come si fa con ActiveRecord?

Ho provato a fare

class Tabella1 \< ActiveRecord::Base

belongs\_to :tabella2, :foreign\_key =\> “campo2”

class Tabella2 \< ActiveRecord::Base

has\_many :tabella1, :foreign\_key =\> “campo1”

Ma non funziona.

Penso che il problema sia che rails prova a vedere tabella2\_id = campo2  
anzichÃ¨ campo1 =campo2 e tabella1\_id=campo1 anzichÃ¨ campo2=campo1.

Infatti con :foreign\_key specifico il campo dell’altra tabella, ma come  
specifico quello della tabella di partenza?

Ho anche provato a fare set\_primary\_key “campo1” ma non Ã¨ cambiato  
niente.

Qualche idea?

Grazie a tutti.
