sql >> Databáze >  >> RDS >> PostgreSQL

Rails migrace pro postgreSQL schémata

Mám knihovnu schema_utils, kterou používám a má následující metodu pro zpracování migrací:

  def self.with_schema(schema_name, &block)
    conn = ActiveRecord::Base.connection
    old_schema_search_path = conn.schema_search_path
    conn.schema_search_path = schema_name
    begin
      yield
    ensure
      conn.schema_search_path = old_schema_search_path
    end
  end

Poté používám migrace jako obvykle, takže mohu nadále volat rake:migrateNow, ve svých migracích můžete použít:

...
schemas.each do |schema|
  SchemaUtils.with_schema(schema) do
    #Put migration code here
    #e.g. add_column :xyz, ...
  end
end

Protože mám tendenci mapovat schémata na kódy účtů, dělám následující:

Account.for_each do |account|
  SchemaUtils.with_schema(account.code) do
    #Put migration code here
  end
end


  1. Django Different nefunguje

  2. Nemohu nastavit více obrázků v zobrazení mřížky?

  3. SQL:Opakujte řádek s výsledkem několikrát a očíslujte řádky

  4. MySQL:Počítejte dvě věci v jednom dotazu?