Sha256: e25bc26ccaa558fb7722fdc7bcaca09b7825de5aa51723c046e681b35d66911e

Contents?: true

Size: 995 Bytes

Versions: 20

Compression:

Stored size: 995 Bytes

Contents

# frozen-string-literal: true

module Sequel
  module Plugins
    # The scissors plugin adds class methods for update, delete, and destroy.
    # It is so named because this is considered dangerous, since it is easy
    # to write:
    #
    #   Album.delete
    #
    # and delete all rows in the table, when you meant to write:
    #
    #   album.delete
    #
    # and only delete a single row.
    #
    # This plugin is mostly useful for backwards compatibility, and not
    # recommended for use in production.  However, it can cut down on
    # verbosity in non-transactional test code, so it may be appropriate
    # to use when testing.
    #
    # Usage:
    #
    #   # Make all model subclass run with scissors
    #   Sequel::Model.plugin :scissors
    #
    #   # Make the Album class run with scissors
    #   Album.plugin :scissors
    module Scissors
      module ClassMethods
        Plugins.def_dataset_methods(self, [:update, :delete, :destroy])
      end
    end
  end
end

Version data entries

20 entries across 19 versions & 2 rubygems

Version Path
tdiary-5.0.5 vendor/bundle/gems/sequel-4.44.0/lib/sequel/plugins/scissors.rb
tdiary-5.0.5 vendor/bundle/gems/tdiary-5.0.4/vendor/bundle/gems/sequel-4.44.0/lib/sequel/plugins/scissors.rb
tdiary-5.0.4 vendor/bundle/gems/sequel-4.44.0/lib/sequel/plugins/scissors.rb
sequel-4.44.0 lib/sequel/plugins/scissors.rb
sequel-4.43.0 lib/sequel/plugins/scissors.rb
sequel-4.42.1 lib/sequel/plugins/scissors.rb
sequel-4.42.0 lib/sequel/plugins/scissors.rb
sequel-4.41.0 lib/sequel/plugins/scissors.rb
sequel-4.40.0 lib/sequel/plugins/scissors.rb
sequel-4.39.0 lib/sequel/plugins/scissors.rb
tdiary-5.0.2 vendor/bundle/gems/sequel-4.37.0/lib/sequel/plugins/scissors.rb
sequel-4.38.0 lib/sequel/plugins/scissors.rb
sequel-4.37.0 lib/sequel/plugins/scissors.rb
sequel-4.36.0 lib/sequel/plugins/scissors.rb
tdiary-5.0.1 vendor/bundle/gems/sequel-4.35.0/lib/sequel/plugins/scissors.rb
sequel-4.35.0 lib/sequel/plugins/scissors.rb
sequel-4.34.0 lib/sequel/plugins/scissors.rb
sequel-4.33.0 lib/sequel/plugins/scissors.rb
sequel-4.32.0 lib/sequel/plugins/scissors.rb
sequel-4.31.0 lib/sequel/plugins/scissors.rb