我需要将 ActiveRecord 模型类自动转换为 MongoDB Document 类。我可以使用 rails 生成器来执行此操作,该生成器将读取模型的属性并生成新的 document.rb。
如果 ActiveRecord 模型类如下所示:
class Project < ActiveRecord::Base
attr_accessible :completed, :end_date, :name, :start_date
end
然后,一个生成的类确认 Mongoid 的结构将如下所示:
class ProjectDocument
field :name, type: String
field :start_date, type: Date
field :end_date, type: Date
field :completed, type: Boolean
field :created_at, type: Time
field :updated_at, type: Time
end
但我不想存储不同的文档文件,每个模型一个。每当启动 rails 应用程序时,我都希望能够即时生成此文档类。
这可能吗?是否建议使用这种从内存中生成和使用类的方法?我对 AR 模型结构的更改没有限制;该文档是灵活的 wrt 数据结构,更改的列将自动添加。