Forum: Italian Ruby user group Ternarie in rails ?

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
D9bc46c29cba4fd1cffffaa9e17be2fe?d=identicon&s=25 Luigi Maroncelli (Guest)
on 2009-01-15 12:57
(Received via mailing list)
Ciao a tutti,
essendo abituato a modellare utilizzando il modello E/R, mi imbatto
spesso in relazioni ternarie e le traduco con una nuova tabella
associativa che contiene le chiavi delle entità in relazione ....;
volevo chiedere se c'è un modo per tradurre questo tipo di relazione
anche in rails; se si, mi potreste dire dove posso vedere alcuni esempi
?

Grazie a tutti.


Luigi
36f352bc8c234dbde21cb30e89767824?d=identicon&s=25 Luigi Panzeri (Guest)
on 2009-01-15 13:30
(Received via mailing list)
Il giorno 15/gen/09, alle ore 12:58, Luigi Maroncelli ha scritto:

>
se hai una tabella associativa chiamata assocs con

user_id
role_id
project_id


dove tutto puo' succedere (cioe' lo user puo' avere diversi ruoli in
differenti progetti etc..)

penso che l'unica sia usare due

has_many  :projects :through =>  :assocs
has_many :roles :through => :assocs
has_many :assocs

e quindi definire un paio di funzione helpers nei modelli tipo (per
lo user):

def roles_in_project(project):
   Assoc.find(:all, :conditions => ["project_id = ? and user_id = ?",
project.id, self.id)
end

etc. etc.

altrimenti potresti definire due tabelle associative (una con tutte
le coppie project, role ed una chiave primaria, ed una che associa
questa allo user_id) e usare quindi has_and_belongs_to_many

Ti avviso che la mia risposta e' solo indicativa. Non mi sono mai
trovato in questa circostanza o se mi sono trovato non l'ho
affrontata riflettendoci molto a fondo.

Ciao
This topic is locked and can not be replied to.