Мне кажется, что ассоциации правильные.Если бы это было не так, ваше сообщение об ошибке жаловалось бы на task
, у которого нет метода с именем person
.
Вместо этого сообщение говорит вам, что t.person
на самом деле nil
.Я предполагаю, что @task
на самом деле представляет собой набор задач;по крайней мере, один из них, кажется, скучает по человеку.
Если вы думаете, что в каждой задаче обязательно должен быть человек, я бы посмотрел мои данные, используя консоль rails или графический интерфейс вашей базы данных.Или используйте оператор безопасного доступа t&.person&.id
, который позволит избежать этой ошибки и покажет вам, что происходит.