Rails 3 object.belongs_to_id для object.belongs_to.name? - PullRequest
0 голосов
/ 05 декабря 2010

У меня есть проект rails 3, в котором index.html.erb в настоящее время включает <td><%= chapter.university_id %></td>, тогда как то, что я хочу показать, должно быть <td><%= chapter.university.name %></td>, однако в настоящее время это исключение неопределенный метод `name 'для nil: NilClass Интересно, что chapter.foo.name работает для доступа к информации из другой модели, к которой принадлежит «глава». Кто-нибудь может помочь стандартизировать это?

EDIT:

В попытке повторить эту ошибку по-другому, я изменил <td><%= chapter.university.name %></td> на <td><%= chapter.university.id %></td>, надеясь, что смогу убедить рельсы дать мне университет_ид из таблицы университетов, а не из таблицы глав. Все еще не повезло, но выдает ошибку Called id для nil, которая по ошибке будет равна 4 - если вы действительно хотите id nil, используйте object_id вместо undefined метод `name 'для nil: NilClass , который я ранее получал.

Я также проверил и перепроверил отношения 'has_many' / 'own_to' между chapter и university, а также chapter и foo и обнаружил, что рабочие и нерабочие отношения идентичны , Я даже зашел так далеко, что изменил порядок, в котором эти отношения объявляются в моделях, безрезультатно.

1 Ответ

0 голосов
/ 07 декабря 2010

Оказалось, что это была проблема с тем, как приборы загружались в базу данных.Зависимости не наблюдались, и поэтому случайные данные помещались в столбец university_id таблицы университетов.Очистка неверных данных и замена их на введенные вручную данные решили проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...