Sha256: b56321cedc3453a5b411208c1c3410a016fb2e5d585151d4dcd57644fe7674d4

Contents?: true

Size: 1.15 KB

Versions: 6

Compression:

Stored size: 1.15 KB

Contents

require 'rake'
require 'pg_search'

namespace :pg_search do
  namespace :migration do
    desc "Generate migration to add support functions for :dmetaphone"
    task :dmetaphone do
      now = Time.now.utc
      filename = "#{now.strftime('%Y%m%d%H%M%S')}_add_pg_search_dmetaphone_support_functions.rb"

      dmetaphone_sql = File.read(File.join(File.dirname(__FILE__), '..', '..', 'sql', 'dmetaphone.sql')).chomp
      uninstall_dmetaphone_sql = File.read(File.join(File.dirname(__FILE__), '..', '..', 'sql', 'uninstall_dmetaphone.sql')).chomp

      File.open(Rails.root + 'db' + 'migrate' + filename, 'wb') do |migration_file|
        migration_file.puts <<-RUBY
class AddPgSearchDmetaphoneSupportFunctions < ActiveRecord::Migration
  def self.up
    say_with_time("Adding support functions for pg_search :dmetaphone") do
      ActiveRecord::Base.connection.execute(<<-SQL)
        #{dmetaphone_sql}
      SQL
    end
  end

  def self.down
    say_with_time("Dropping support functions for pg_search :dmetaphone") do
      ActiveRecord::Base.connection.execute(<<-SQL)
        #{uninstall_dmetaphone_sql}
      SQL
    end
  end
end
        RUBY
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
pg_search-0.2.2 lib/pg_search/tasks.rb
pg_search-0.2.1 lib/pg_search/tasks.rb
pg_search-0.2 lib/pg_search/tasks.rb
pg_search-0.1.1 lib/pg_search/tasks.rb
pg_search-0.1 lib/pg_search/tasks.rb
pg_search-0.0.2 lib/pg_search/tasks.rb