我想为任何MongoMapper模型的模型定义一个默认的before_save
回调。例如,使用ActiveRecord,我可以在初始化程序中执行此操作:
module ActiveRecord
class Base
before_save :strip_attrs
private
def strip_attrs
# do stuff
end
end
end
是否可以使用MongoMapper做这样的事情?
答案 0 :(得分:1)
尝试构建一个ActiveSupport::Concern
插件,然后将其插入MongoMapper :: Document,就像MongoMapper does内部插件一样。
module StripOnSave
extend ActiveSupport::Concern
included do
before_save :strip_attrs
end
def strip_attrs
# ...
end
end
module MongoMapper
module Document
include StripOnSave
end
module EmbeddedDocument
include StripOnSave
end
end