我正在关注如何为嵌套注释设置Ancestry gem的本教程(http://www.tweetegy.com/2013/04/create-nested-comments-in-rails-using-ancestry-gem/)。当我在普通的rails应用程序上运行教程时,它工作正常。当我尝试将评论系统分离到引擎时,我的问题出现了。以下是我的模型:
在引擎中
module CommentThread
class Comment < ActiveRecord::Base
has_ancestry
belongs_to :commentable, :polymorphic => true
end
end
在主应用中
class Article < ActiveRecord::Base
has_many :comments, :as => :commentable, class_name: 'CommentThread::Comment'
end
如果我删除has_ancestry
,我可以正常访问评论。我按照我在第一个应用程序中所做的那样遵循了教程,但出于某种原因,当我在这个上运行Article.first.comments时,我得到方法遗漏错误。如果我需要提供更多信息以获取帮助,请与我们联系。谢谢。
答案 0 :(得分:2)
如果您使用的是引擎,则应将祖先放入Gemfile中,并在lib/<your_engine>/engine.rb file
中使用它。
<强> LIB / your_engine / engine.rb 强>
require 'ancestry'