3

注:この質問を他の同様の質問の複製としてマークすることを考える前に、この質問はRailsの問題について尋ねられていることに注意してください。私が検索した他の質問はコントローラーを扱っています。私が見つけた質問はありません、それは懸念を扱っています。

内にcomments_deletion.rbという名前のファイルapp/models/concernsがあり、次のコードが含まれています。

module CommentsDeletion
  extend ActiveSupport::Concern

  included do
    after_save :delete_comments, if: :soft_deleted?
  end

  def soft_deleted?
    status == 'deleted'
  end

  def delete_comments
    comments.each &:destroy
  end
end

そして、次のコードを記述して、モデルにファイルを混在させようとしています:

class Employee < ActiveRecord::Base
  include CommentsDeletion
  # all the other code
end

これを行うだけで、 を呼び出すrails consoleと、次のエラーが表示されます。

Circular dependency detected while autoloading constant Concerns::CommentsDeletion

私は Rails 4.0.2 を使用していますが、これが原因で気が狂ってしまい、自分のコードの何が問題なのかわかりません。

4

2 に答える 2