J'ai rails 3 où le projet index.html.erb comprend actuellement <td><%= chapter.university_id %></td>
alors ce que je veux montrer devrait être <td><%= chapter.university.name %></td>
cependant, cela jette actuellement l'exception méthode non définie nom » pour nul: NilClass Fait intéressant, chapitre .foo.name fonctionne pour accéder aux informations d'un autre modèle auquel appartient "chapter". Quelqu'un peut-il aider à standardiser cela?Rails 3 object.belongs_to_id to object.belongs_to.name?
EDIT:
Dans une tentative de reproduire cette erreur d'une autre manière, j'ai changé <td><%= chapter.university.name %></td>
-<td><%= chapter.university.id %></td>
, dans l'espoir que je pouvais convaincre les rails de me donner university_id de la table des universités, plutôt que les chapitres table. Toujours pas de chance, mais a donné l'erreur Appelé id pour nil, ce qui serait par erreur 4 - si vous voulez vraiment l'id de zéro, utilisez object_id plutôt que la méthode undefined `nom 'pour nil: NilClass que j'avais précédemment été en train de recevoir.
J'ai également vérifié et revérifié le « has_many » relations/« belongs_to » entre chapter
et university
ainsi que chapter
et foo
et a trouvé les relations de travail et non-travail soient identiques. Je suis même allé jusqu'à changer l'ordre dans lequel ces relations sont déclarées dans les modèles, sans effet.