我有一个大屁股集合,它使用一个需要进行滤波以不同的方式默认范围Mongomapper
class PaymentLog < ActiveRecord::Base
include MongoMapper::Document
set_collection_name "logs"
...
# default scope for payment activity
end
再举例来说,这同一个集合。
class SuspiciousActivityLog < ActiveRecord::Base
include MongoMapper::Document
set_collection_name "logs"
...
# default scope search for suspicious activity
end
两者都使用相同的日志,但每个需要在type
字段的默认搜索。
因此,当我这样做时,例如'paymentLog.all'就会覆盖默认的查询方法。 – 2012-03-08 09:09:23
@JosephLeBrech是的,MongoMapper委托'all'为'query',所以它最终成为'PaymentLog.query.all' ...'query'是一个装饰的'Plucky :: Query' https://github.com/ jnunemaker/mongomapper/blob/master/lib/mongo_mapper/plugins/querying.rb#L63-70 – 2012-03-09 18:16:32
是我的理解,根本没有范围。因为当我做'Object.first'或'Object.last'时,它仍会产生相同的对象。 – Trip 2012-08-14 23:08:24