2010-10-29 6 views
10

Étant donné que j'ai un modèle d'artefact et un modèle d'utilisateur: Je voudrais définir deux champs d'artefact, open_by et assigned_to, qui sont des valeurs d'utilisateur et héritent de tous les méthodes d'association appropriées.Je dois spécifier un nom de champ différent de la table pour l'association

Quelles sont les bonnes options belongs_to ou has_one ou has_many que je devrais définir?

L'objectif est d'être en mesure de faire référence le nom de l'utilisateur à travers la déclaration hld.assiged_to.nameHLD est un artefact.

Merci pour l'aide. Je me suis confondu avec la terminologie avec toutes les lectures que j'ai faites sur le problème.

Répondre

17

Ce qui suit est ce que j'ai déterminé était correct.

classe artefact < ActiveRecord :: Base
belongs_to: projet
belongs_to: opened_by,: class_name => 'utilisateur'
belongs_to: assigned_to,: class_name => 'utilisateur'

Le premier argument de l'appart_to spécifie le champ à référencer. La seconde indique le modèle/classe à utiliser comme référence.

Questions connexes