Рекурсивно: включить в Rails ActiveRecord - PullRequest
4 голосов
/ 15 сентября 2009

Скажите, у меня есть эти модели

class Project < ActiveRecord::Base
    has_many :comments
end

class Comment < ActiveRecord::Base
    belongs_to :project
    belongs_to :user
end

class User < ActiveRecord::Base
    has_many :comments
end

Так что я могу сделать

p = Project.find(1, :include => :comments)
p.comments.collect(&:user).collect(&:name) # this executes select for each user

Как мне сказать, что я хочу добавить пользователя комментария?

1 Ответ

10 голосов
/ 15 сентября 2009

Я считаю, :include => {:comments => :user} должно работать.

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