my rails app has a local database where all info is stored, but it often syncs with a ''master'' database that has different connection info.. i have that all set up in my app and it works great. problem is with testing. for example when i create a person it also creates them on the master database. in test environment it still connects to the same database, which is not what i''m looking for. I have something like this in my app to allow a model to connect to the master db: class Master < ActiveRecord::Base self.abstract_class = true establish_connection( :adapter => "mysql", :database => "master", :host => "xxx.xxx.xxx", :port => xxxx, :username => "user", :password => "pass") end all ''sync tables'' inherit from Master instead of ActiveRecord.. so what i need is something that can ask "is environment = testing ?" and if so give different connection info for a testing Master DB. what''s the best way to do this? i was thinking having a similar class called FakeMaster.. but how do i make my sync tables decide which one to use on the fly? can i do this? : if RAILS_ENV == "test" class Synctable < FakeMaster end else class Synctable < Master end end also keep in mind that even if the above works i would like to stay dry and not duplicate the class bodies above. would this work? db_to_use (RAILS_ENV == "test" ? ''FakeMaster'' : ''Master'') and then: eval "class Synctable < #{db_to_use}" .... body goes here... end i somehow doubt that that is gonna work. thanks in advance, Stuart --~--~---------~--~----~------------~-------~--~----~ 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 rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---