Sha256: 580f8d05d585d9c665ab2e41404793665636ab16fb57738bc69feaeaa3144697
Contents?: true
Size: 864 Bytes
Versions: 5
Compression:
Stored size: 864 Bytes
Contents
require "mongoid/criteria" require "mongoid/document" module RocketJob module MongoidClients module Options extend ActiveSupport::Concern def with_collection(collection_name) self.collection_name = collection_name self end def collection(parent = nil) @collection_name ? mongo_client[@collection_name] : super(parent) end def collection_name @collection_name || super end def collection_name=(collection_name) @collection_name = collection_name&.to_sym end private module ClassMethods def with_collection(collection_name) all.with_collection(collection_name) end end end end end ::Mongoid::Criteria.include(RocketJob::MongoidClients::Options) ::Mongoid::Document.include(RocketJob::MongoidClients::Options)
Version data entries
5 entries across 5 versions & 1 rubygems