У меня есть Проект, имеющий много Задач, и каждый Определяет задачу, принадлежит Человеку.
В моей форме редактирования Проекта я разрешаю редактировать существующие задания и добавлять новые со средством Формы Вложенного объекта (http://ryandaigle.com/articles/2009/2/1/what-s-new-in-edge-rails-nested-attributes):
<% project_form.fields_for :tasks do |task_form| %>
Я хочу к нетерпеливой загрузке связанные объекты Человека Задачи, когда fields_for запрашивает задачи от базы данных, но я не мог найти решение. Действительно ли это возможно? В модели Project я мог определить свой has_many: задачи с: включайте опцию, но я избежал бы этого, поскольку мне не нужно к нетерпеливым объектам Человека загрузки при контакте с задачи проекта в целом.
На данный момент я создал вторую has_many ассоциацию: tasks_including_person с соответствующим accepts_nested_attributes_for и использованием это в моем fields_for. Это работает, но я предпочел бы не, должны создать определенную ассоциацию как это.
Вы можете передать второй параметр fields_for
, который является объектом или коллекцией для оказывать. Например:
project_form.fields_for :tasks, project_form.object.tasks.all(:include => :person) do |task_form|