Sha256: 89c63df4759800d523809bb9c1cf2eebc89eb964e3c0e11590b0789c75275a62
Contents?: true
Size: 1.13 KB
Versions: 4
Compression:
Stored size: 1.13 KB
Contents
require "sequel" require "sequel/plugins/mobility" unless defined?(ActiveSupport::Inflector) # TODO: avoid automatically including the inflector extension require "sequel/extensions/inflector" end require "sequel/plugins/dirty" require_relative "./sequel/backend" require_relative "./sequel/dirty" require_relative "./sequel/cache" require_relative "./sequel/query" module Mobility module Plugins =begin Plugin for Sequel models. This plugin automatically requires sequel related plugins, which are not actually "active" unless their base plugin (e.g. dirty for sequel_dirty) is also enabled. =end module Sequel extend Plugin requires :sequel_backend, include: :after requires :sequel_dirty requires :sequel_cache requires :sequel_query included_hook do |klass| unless sequel_class?(klass) name = klass.name || klass.to_s raise TypeError, "#{name} should be a subclass of Sequel::Model to use the sequel plugin" end end private def sequel_class?(klass) klass < ::Sequel::Model end end register_plugin(:sequel, Sequel) end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
mobility-1.1.3 | lib/mobility/plugins/sequel.rb |
mobility-1.1.2 | lib/mobility/plugins/sequel.rb |
mobility-1.1.1 | lib/mobility/plugins/sequel.rb |
mobility-1.1.0 | lib/mobility/plugins/sequel.rb |