exports.up = async knex => { await knex.schema.createTable('wants', table => { table.uuid('id') .primary() .defaultTo(knex.raw('gen_random_uuid()')); table.integer('release') .notNullable() .index(); table.uuid('user') table.foreign('user') .references('id') .inTable('users') .onDelete('CASCADE'); table.jsonb('data') .notNullable(); // user can only want a release once table.unique(['user', 'release']); table.timestamps(true, true); }); }; exports.down = async () => true;