ваше сообщение коммита
This commit is contained in:
@@ -1,13 +0,0 @@
|
||||
-- Создание справочника тегов
|
||||
CREATE TABLE IF NOT EXISTS tags (
|
||||
id SERIAL PRIMARY KEY,
|
||||
name VARCHAR(64) NOT NULL UNIQUE,
|
||||
description TEXT
|
||||
);
|
||||
|
||||
-- Создание связующей таблицы "пользователь — тег"
|
||||
CREATE TABLE IF NOT EXISTS user_tags (
|
||||
user_id INTEGER NOT NULL REFERENCES users(id) ON DELETE CASCADE,
|
||||
tag_id INTEGER NOT NULL REFERENCES tags(id) ON DELETE CASCADE,
|
||||
PRIMARY KEY (user_id, tag_id)
|
||||
);
|
||||
@@ -1,3 +1,3 @@
|
||||
-- Добавление поля is_blocked и blocked_at для блокировки пользователя
|
||||
ALTER TABLE users ADD COLUMN is_blocked boolean NOT NULL DEFAULT false;
|
||||
ALTER TABLE users ADD COLUMN blocked_at timestamp;
|
||||
ALTER TABLE users ADD COLUMN IF NOT EXISTS is_blocked BOOLEAN DEFAULT FALSE;
|
||||
ALTER TABLE users ADD COLUMN IF NOT EXISTS blocked_at timestamp;
|
||||
17
backend/db/migrations/045_create_user_table_relations.sql
Normal file
17
backend/db/migrations/045_create_user_table_relations.sql
Normal file
@@ -0,0 +1,17 @@
|
||||
-- Миграция: универсальная таблица связей для relation/reference/lookup/multiselect
|
||||
|
||||
CREATE TABLE IF NOT EXISTS user_table_relations (
|
||||
id SERIAL PRIMARY KEY,
|
||||
from_row_id INTEGER NOT NULL REFERENCES user_rows(id) ON DELETE CASCADE, -- строка-источник
|
||||
column_id INTEGER NOT NULL REFERENCES user_columns(id) ON DELETE CASCADE, -- столбец, в котором хранится связь
|
||||
to_table_id INTEGER NOT NULL REFERENCES user_tables(id) ON DELETE CASCADE, -- таблица-назначение
|
||||
to_row_id INTEGER NOT NULL REFERENCES user_rows(id) ON DELETE CASCADE, -- строка-назначение
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||
);
|
||||
|
||||
-- Индексы для ускорения поиска и фильтрации
|
||||
CREATE INDEX IF NOT EXISTS idx_user_table_relations_from_row ON user_table_relations(from_row_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_user_table_relations_column ON user_table_relations(column_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_user_table_relations_to_table ON user_table_relations(to_table_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_user_table_relations_to_row ON user_table_relations(to_row_id);
|
||||
@@ -0,0 +1,3 @@
|
||||
-- Миграция: добавление поля placeholder в user_columns
|
||||
|
||||
ALTER TABLE user_columns ADD COLUMN IF NOT EXISTS placeholder VARCHAR(255) UNIQUE;
|
||||
13
backend/db/migrations/046_create_user_tag_links.sql
Normal file
13
backend/db/migrations/046_create_user_tag_links.sql
Normal file
@@ -0,0 +1,13 @@
|
||||
-- Миграция: таблица связей пользователей и тегов
|
||||
|
||||
CREATE TABLE IF NOT EXISTS user_tag_links (
|
||||
id SERIAL PRIMARY KEY,
|
||||
user_id INTEGER NOT NULL REFERENCES users(id) ON DELETE CASCADE,
|
||||
tag_id INTEGER NOT NULL REFERENCES user_rows(id) ON DELETE CASCADE,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
UNIQUE(user_id, tag_id)
|
||||
);
|
||||
|
||||
-- Индексы для ускорения поиска
|
||||
CREATE INDEX IF NOT EXISTS idx_user_tag_links_user_id ON user_tag_links(user_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_user_tag_links_tag_id ON user_tag_links(tag_id);
|
||||
13
backend/db/migrations/047_create_user_tag_links.sql
Normal file
13
backend/db/migrations/047_create_user_tag_links.sql
Normal file
@@ -0,0 +1,13 @@
|
||||
-- Миграция: таблица связей пользователей и тегов
|
||||
|
||||
CREATE TABLE IF NOT EXISTS user_tag_links (
|
||||
id SERIAL PRIMARY KEY,
|
||||
user_id INTEGER NOT NULL REFERENCES users(id) ON DELETE CASCADE,
|
||||
tag_id INTEGER NOT NULL REFERENCES user_rows(id) ON DELETE CASCADE,
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||
UNIQUE(user_id, tag_id)
|
||||
);
|
||||
|
||||
-- Индексы для ускорения поиска
|
||||
CREATE INDEX IF NOT EXISTS idx_user_tag_links_user_id ON user_tag_links(user_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_user_tag_links_tag_id ON user_tag_links(tag_id);
|
||||
Reference in New Issue
Block a user