1

我正在尝试有两个文档,一个用于帖子,一个用于回复,并使用“Referenced 1-N”关系将它们连接起来。

根据我从mongoid 文档中读到的内容,您所要做的就是添加has_manybelongs_to到两个类中,mongoid 将允许我添加指向父级的子文档。

所以我想做的只是

  1. 创建一个指向父级的新回复文档
  2. 如果可能的话,有一个包含孩子 ID 的数组

我试图以各种方式访问​​帖子的回复,但它不起作用。因此,如果有人能为我破解这个难题,那就太好了:)

输出

#< PostsController: > 的未定义方法“回复”

模型

class Post
  include Mongoid::Document
  has_many :replies
  field :text,:type => String
end

class Reply
  include Mongoid::Document
  belongs_to :post
  field :name, :type => String
  field :text, :type => String
end 

控制器

def create_reply
  post = Post.find(params[:post_id])
  post.reply.new(params[:post])
end
4

1 回答 1

2

reply为您的Post班级未定义,因为Post有很多replies,不是reply

尝试改用post.replies.new(params[:post])您的create_reply方法编写。

于 2012-11-19T20:09:38.987 回答