On 13 August 2010 00:08, Fearless Fool <[email protected]> wrote: > Short form: How can I convince migrate to create or modify tables in a > database other than the "current" one? In other words, how can I get > migrate to honor establish_connection :external in a model definition? > > Details: I have a large "almost static" dataset that never changes as a > result of my Rails app, so it's residing in a separate database. (It > gets refreshed nightly with external data.) I'd like to maintain its > schema using the Rails migration mechanism, but despite my efforts, > migrate only updates tables for the current environment (e.g. > _development or _test). > > Here's a stripped down example: > > === MODELS (in app/models): > class Hat < ActiveRecord::Base > establish_connection :external # use external database > end > > === SCHEMA (in db/schema.rb, lightly edited): > ActiveRecord::Schema.define(:version => 20100812225348) do > create_table "hats", :force => true do |t| > t.string "style" > end > end > > === TABLE DEFINITIONS (in config/database.yml, only showing first two > entries): > development: > adapter: mysql > encoding: utf8 > reconnect: false > database: dbtest_development > pool: 5 > username: root > password: XYZZY > socket: /tmp/mysql.sock > > external: > adapter: mysql > encoding: utf8 > reconnect: false > database: dbtest_external > pool: 5 > username: root > password: XYZZY > socket: /tmp/mysql.sock > > === SYNOPSIS: > $ rails new dbtest > $ cd dbtest > $ <edit config/database.yml to add external table spec> > $ rake db:create:all > $ rails generate model Hat style:string > $ <edit models/hat.rb to include establish_connection as shown above> > $ rake db:migrate
Am I misunderstanding your question, or is it just a matter of doing rake db_migrate RAILS_ENV=external to migrate that db? Colin -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.

