Refactoring to use entities over sites and networks.
This commit is contained in:
@@ -326,9 +326,9 @@ exports.up = knex => Promise.resolve()
|
||||
|
||||
table.text('real_name');
|
||||
|
||||
table.integer('network_id', 12)
|
||||
table.integer('entity_id', 12)
|
||||
.references('id')
|
||||
.inTable('networks');
|
||||
.inTable('entities');
|
||||
|
||||
table.integer('alias_for', 12)
|
||||
.references('id')
|
||||
@@ -393,15 +393,11 @@ exports.up = knex => Promise.resolve()
|
||||
.references('id')
|
||||
.inTable('actors');
|
||||
|
||||
table.integer('network_id', 12)
|
||||
table.integer('entity_id', 12)
|
||||
.references('id')
|
||||
.inTable('networks');
|
||||
.inTable('entities');
|
||||
|
||||
table.integer('site_id', 12)
|
||||
.references('id')
|
||||
.inTable('sites');
|
||||
|
||||
table.unique(['actor_id', 'network_id', 'site_id']);
|
||||
table.unique(['actor_id', 'entity_id']);
|
||||
table.integer('priority', 4)
|
||||
.defaultTo(1);
|
||||
|
||||
@@ -680,13 +676,10 @@ exports.up = knex => Promise.resolve()
|
||||
.then(() => knex.schema.createTable('releases', (table) => {
|
||||
table.increments('id', 16);
|
||||
|
||||
table.integer('site_id', 12)
|
||||
table.integer('entity_id', 12)
|
||||
.references('id')
|
||||
.inTable('sites');
|
||||
|
||||
table.integer('network_id', 12)
|
||||
.references('id')
|
||||
.inTable('networks');
|
||||
.inTable('entities')
|
||||
.notNullable();
|
||||
|
||||
table.integer('studio_id', 12)
|
||||
.references('id')
|
||||
@@ -697,7 +690,7 @@ exports.up = knex => Promise.resolve()
|
||||
|
||||
table.text('shoot_id');
|
||||
table.text('entry_id');
|
||||
table.unique(['site_id', 'network_id', 'entry_id', 'type']);
|
||||
table.unique(['entity_id', 'entry_id', 'type']);
|
||||
|
||||
table.text('url', 1000);
|
||||
table.text('title');
|
||||
@@ -856,15 +849,6 @@ exports.up = knex => Promise.resolve()
|
||||
.then(() => { // eslint-disable-line arrow-body-style
|
||||
// allow vim fold
|
||||
return knex.raw(`
|
||||
ALTER TABLE releases
|
||||
ADD CONSTRAINT ensure_site_or_network CHECK (site_id IS NOT NULL OR network_id IS NOT NULL);
|
||||
|
||||
ALTER TABLE releases_search
|
||||
ADD COLUMN document tsvector;
|
||||
|
||||
CREATE UNIQUE INDEX unique_actor_slugs_network ON actors (slug, network_id);
|
||||
CREATE UNIQUE INDEX unique_actor_slugs ON actors (slug, (network_id IS NULL));
|
||||
|
||||
CREATE TEXT SEARCH DICTIONARY traxxx_dict (
|
||||
TEMPLATE = pg_catalog.simple,
|
||||
stopwords = traxxx
|
||||
@@ -874,6 +858,12 @@ exports.up = knex => Promise.resolve()
|
||||
COPY = english
|
||||
);
|
||||
|
||||
ALTER TABLE releases_search
|
||||
ADD COLUMN document tsvector;
|
||||
|
||||
CREATE UNIQUE INDEX unique_actor_slugs_network ON actors (slug, entity_id);
|
||||
CREATE UNIQUE INDEX unique_actor_slugs ON actors (slug, (entity_id IS NULL));
|
||||
|
||||
ALTER TEXT SEARCH CONFIGURATION traxxx
|
||||
ALTER MAPPING FOR word, numword, hword, numhword, hword_part, hword_numpart, asciiword, asciihword, hword_asciipart WITH traxxx_dict, simple, english_stem;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user