mnml/ops/migrations/20181228162012_zones.js
2018-12-28 19:20:47 +11:00

28 lines
739 B
JavaScript

exports.up = async knex => {
await knex.schema.createTable('zones', async (table) => {
table.uuid('id').primary();
table.index('id');
table.timestamps();
table.binary('data').notNullable();
table.boolean('active')
.defaultTo(true)
.notNullable();
table.uuid('account').notNullable()
table.foreign('account')
.references('id')
.inTable('accounts')
.onDelete('CASCADE');
table.index('account');
await knex.schema.raw(
// eslint-disable-next-line max-len
'CREATE UNIQUE INDEX zones_account_active ON zones (account) WHERE active = true;'
);
});
};
exports.down = async () => {};