У меня есть структура таблицы, которая использует таблицу ссылок для связи Заданий с людьми, таблица ссылок содержит данные о том, как долго человек находился на определенной работе.
У меня есть простое приложение для рельсов, которое пытается найти все вакансии и отображает диапазоны дат занятости.
class Employment < ActiveRecord::Base
belongs_to :person
belongs_to :job
end
class Job < ActiveRecord::Base
belongs_to :employer
has_many :employment
accepts_nested_attributes_for :employment
end
def index
@jobs = Job.joins(:employment).find(:all)
end
Теперь, когда я пытаюсь получить доступ к свойствам "ship_started "/ закончилась, я получаю 'NoMethodError in Experience # index'
undefined method `employment_started' for #<Class:0x000000026927e0>
17: <span><%=job.employment.employment_started%> - <%=job.employment.to_yaml%>
Когда я использую функцию 'to_yaml', я вижу, что в объекте есть данные:
!ruby/object:Employment attributes: job_id: 1 person_id: 1 employment_started: 2008-04-21 employment_ended: attributes_cache: {} changed_attributes: {} destroyed: false marked_for_destruction: false new_record: false previously_changed: {} readonly: false
Почему рельсы не могут получить доступ к этому атрибуту 3-го уровня?