ОБНОВЛЕНИЕ: приведенный ниже код похож на рабочий процесс модели. Я попробовал его после некоторого кодирования, и он не сработал!
Допустим, у вас есть модель публикации и модель пользователя.
Пользователь has_many сообщений, и вы хотите, чтобы все пользователи (авторы) со своими сообщениями.
Вот совет, как с этим справиться. и мой пример - получение одного сообщения.
post.rb
class Post
include MongoMapper::Document
key :title, String
key :body, String
key :user_id, ObjectId
belongs_to :user
end
и user.rb
class User
include MongoMapper::Document
key :name
many :posts, :embed => :title
end
Теперь,
u = User.first
p = u.posts.first
puts p.title # read it from embedded doc
puts p.body # lazy loading
Хитрость здесь в том, чтобы встроить наиболее распространенные поля, такие как имя пользователя, _id, имя пользователя и т. Д.
Я не тестировал то, что указано выше, но вы должны попробовать!
Лучший - Амр
person
amrnt
schedule
23.10.2010
question = Question.first; question.comments(:include => :user)
(где комментарии - это встроенная модель). - person agentofuser   schedule 22.10.2010