2013-06-05 13 views

risposta

34

direi che avete la soluzione corretta lì come dovrà essere rigenerato l'indice, quindi, perché non v'è alcuna update_index.

10

Ehi, ecco una migrazione che ho appena scritto che funziona piuttosto bene. Ho una tabella 'scraped_episodes' con una colonna che è varchar (255) 'enclosureUrl'. Ho bisogno di rendere questo più a lungo URL quindi questo è quello che ho usato (Rails 3.2.13)

class ExpandEnclosureUrl < ActiveRecord::Migration 
    def up 
    # remove index cuz we need to 
    remove_index :scraped_episodes, :enclosureUrl 

    # change length to 2048 characters 
    change_column :scraped_episodes, :enclosureUrl, :text, :limit=>2048 

    # redo this index to only index the first 255 chars 
    add_index :scraped_episodes, :enclosureUrl, :length => 255 
    end 

    def down 
    # remove index cuz we need to 
    remove_index :scraped_episodes, :enclosureUrl 

    # use the same settings at when i first created this field 
    change_column :scraped_episodes, :enclosureUrl, :string, :limit=>nil 

    # use the same settings as when i first added this index 
    add_index :scraped_episodes, :enclosureUrl 
    end 


end 
Problemi correlati