2009-07-18 10 views
0

Je sais que c'est quelque chose de simple que je fais mal.Attribut de question de débutant de la table associée n'apparaissant pas dans la vue d'index

J'ai trois tables, l'installation, le quartier, les écoles

Installation: 
    has_many :schools 
    has_many :neighborhoods 
Neighborhood: 
    has_many :installations 
    has_many :schools 
Schools: 
    belongs_to :installations 
    belongs_to :neighborhoods 

Je ne peux pas comprendre comment afficher le nom du quartier de l'école se trouve dans sur la vue d'index. Je peux l'obtenir pour montrer sur la vue de spectacle une fois que j'ai l'id d'école. Mais dans l'index, je n'arrive pas à comprendre ce qu'il faut mettre dans le contrôleur, ce qui me permettra d'accéder au nom de voisinage à partir de l'ID du quartier qui se trouve dans le modèle École. Je suis sûr que c'est si facile et je suis en train de bousiller quelque chose de stupide.

AIDE!

Répondre

0

Essayez:

Installation: 
    has_many :schools 
    has_many :neighborhoods, :through => :schools 
Neighborhood: 
    has_many :schools 
    has_many :installations, :through => :schools 
Schools: 
    belongs_to :installations 
    belongs_to :neighborhoods 

Ensuite, vous pouvez mettre en boucle par @ school.neighborhoods dans votre spectacle Vue:

<% for neighborhood in @school.neighborhoods %> 
    <span><%=h neighborhood.name %></span> 
<% end %> 

Remplacement de la durée quelle qu'en soit la sortie HTML que vous voulez.

Dans l'index (indice des écoles ??):

<%=h school.neighborhood.name %> 
+0

Merci beaucoup pour votre aide. Je l'avais fait à l'origine, mais je pensais qu'il y aurait un problème avec d'autres tables jointes pour ces deux modèles (installation et quartiers) mais ça semble aller. Merci encore. –

Questions connexes