Sha256: eaeaf2b93e5897fa4b71413383d44562e93e2a5c09d6add6f6a7f40ec441ce62

Contents?: true

Size: 630 Bytes

Versions: 13

Compression:

Stored size: 630 Bytes

Contents

module Effective
  class ActiveStorageExtension < ActiveRecord::Base
    belongs_to :blob, class_name: 'ActiveStorage::Blob'

    PERMISSIONS = ['inherited', 'public']

    effective_resource do
      permission :string

      timestamps
    end

    scope :deep, -> { includes(:attachment) }
    scope :sorted, -> { order(:id) }

    validates :permission, presence: true, inclusion: { in: PERMISSIONS }

    def to_s
      permission.presence || 'active storage extension'
    end

    def permission_inherited?
      permission == 'inherited'
    end

    def permission_public?
      permission == 'public'
    end

  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
effective_storage-0.4.6 app/models/effective/active_storage_extension.rb
effective_storage-0.4.5 app/models/effective/active_storage_extension.rb
effective_storage-0.4.4 app/models/effective/active_storage_extension.rb
effective_storage-0.4.3 app/models/effective/active_storage_extension.rb
effective_storage-0.4.2 app/models/effective/active_storage_extension.rb
effective_storage-0.4.1 app/models/effective/active_storage_extension.rb
effective_storage-0.4.0 app/models/effective/active_storage_extension.rb
effective_storage-0.3.2 app/models/effective/active_storage_extension.rb
effective_storage-0.3.1 app/models/effective/active_storage_extension.rb
effective_storage-0.3.0 app/models/effective/active_storage_extension.rb
effective_storage-0.2.2 app/models/effective/active_storage_extension.rb
effective_storage-0.2.1 app/models/effective/active_storage_extension.rb
effective_storage-0.2.0 app/models/effective/active_storage_extension.rb