個人レコードから、特定のタイプのドキュメントを追加/表示できるようにする必要があります。category_id の条件を含めることは機能しますが、この時点では、開発が進むにつれてカテゴリ ID が同じままであるとは想定できません。これは、必要なカテゴリのみを作成するテストの問題でもあります。
たとえば次のように、category_id を動的に設定する方法はありますか。
has_many :personal_documents, :as => :documentable, :conditions => "category_id = #{DocumentCategory.find_by_name('Personal').id}", class_name: 'Document'
モデル:
Person < AR::Base
has_many :documents, :as => :documentable
has_many :personal_documents, :as => :documentable, #:conditions => "category_id = 1"
has_many :legal_documents, :as => :documentable, #:conditions => "category_id = 2"
end
Animal < AR::Base
has_many :documents, :as => :documentable
end
Document < AR::Base
belongs_to :person
belongs_to :category
end