Ad

Running DB Migrations From Application

- 1 answer

I have a rails application where each user has a separate database. (taking Joel Spolsky's advice on this). I want to run DB migrations from the rails application to create a new database and tables for this user.

What is the easiest way to do this?

Maybe the db migration is not the best for this type of thing. Thanks!


It would be nice if it could be a completely automated process. The following process would be ideal.

  1. A user signs up on our site to use this web app
  2. Migrations are run to create this users database and get tables setup correctly

Is there a way of calling a rake task from a ruby application?

Ad

Answer

To answer part of your question, here's how you'd run a rake task from inside Rails code:

require 'rake'
load 'path/to/task.rake'

Rake::Task['foo:bar:baz'].invoke

Mind you, I have no idea how (or why) you could have one database per user.

Ad
source: stackoverflow.com
Ad