我目前正在尝试在我的 rails 应用程序中使用acts_as_archive gem。
关于软删除的所有咆哮,我认为将已删除的数据存储在一个额外的表中可能是一个更优雅的解决方案......
我的问题是,我已经按照简约文档配置了所有内容,但存档表没有按预期创建。
我的模型:
class Article < ActiveRecord::Base
attr_accessible :content, :lead, :title
acts_as_archive
has_and_belongs_to_many :categories
end
class Category < ActiveRecord::Base
attr_accessible :title
acts_as_archive
has_and_belongs_to_many :articles
end
config/acts_as_archive.yml:
Article:
- class: Article::Archive
table: archived_articles
Category:
- class: Category::Archive
table: archived_categories
之后我运行 rake db:migrate 并删除了 rails 控制台中的一篇文章。然后我尝试访问
Article::Archive.first
但出现以下错误:
ActiveRecord::StatementInvalid: Could not find table 'archived_articles'
似乎包含了 gem,但不知何故没有创建表。我错过了什么吗?毕竟,我开始怀疑使用这个 gem 是否是一个好主意,因为文档非常少,而且它似乎不再活跃了....
使用像acts_as_paranoid这样的可软删除的dem有什么好的吗?