diff options
Diffstat (limited to 'db/migrations/20210612181508_init_referrals.js')
| -rw-r--r-- | db/migrations/20210612181508_init_referrals.js | 43 |
1 files changed, 23 insertions, 20 deletions
diff --git a/db/migrations/20210612181508_init_referrals.js b/db/migrations/20210612181508_init_referrals.js index 875d167f..f9107e15 100644 --- a/db/migrations/20210612181508_init_referrals.js +++ b/db/migrations/20210612181508_init_referrals.js @@ -1,21 +1,24 @@ exports.up = function(knex) { - return knex.schema.createTable('referrals', function(t) { - t.increments('id').unsigned().primary(); - t.integer('user_id').nullable(); - t.foreign('user_id').references('users.id'); - - t.integer('sponsor_id').notNull(); - t.foreign('sponsor_id').references('users.id'); - - t.string('token').notNull(); - t.string('expiry').nullable(); - t.enum('status', ['available', 'used', 'expired', 'cancelled']).notNull().defaultTo('available'); - - t.timestamps(); - }) - }; - - exports.down = function(knex) { - return knex.schema.dropTable('referrals'); - }; -
\ No newline at end of file + return Promise.all([ + knex.schema.dropTableIfExists('referrals'), + + knex.schema.createTable('referrals', function(t) { + t.increments('id').unsigned().primary(); + t.integer('user_id').nullable(); + t.foreign('user_id').references('users.id'); + + t.integer('sponsor_id').notNull(); + t.foreign('sponsor_id').references('users.id'); + + t.string('token').notNull(); + t.string('expiry').nullable(); + t.enum('status', ['available', 'used', 'expired', 'cancelled']).notNull().defaultTo('available'); + + t.timestamps(); + }) + ]) +}; + +exports.down = function(knex) { + return knex.schema.dropTable('referrals'); +}; |
