PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Case insensitive como (ilike) no Datamapper com Postgresql


Ao escrever meu próprio adaptador de objeto de dados que substitui o like_operator consegui fazer com que o Postgres não diferenciasse maiúsculas de minúsculas ILIKE .
require 'do_postgres'
require 'dm-do-adapter'

module DataMapper
  module Adapters

    class PostgresAdapter < DataObjectsAdapter

      module SQL #:nodoc:
        private

        # @api private
        def supports_returning?
          true
        end

        def like_operator(operand)
          'ILIKE'
        end
      end

      include SQL

    end

    const_added(:PostgresAdapter)

  end
end

Eventualmente, decidi portar o aplicativo em questão para usar um banco de dados de documentos.