directus

Форк
0
/
20210525A-add-insights.ts 
35 строк · 1.4 Кб
1
import type { Knex } from 'knex';
2

3
export async function up(knex: Knex): Promise<void> {
4
	await knex.schema.createTable('directus_dashboards', (table) => {
5
		table.uuid('id').primary().notNullable();
6
		table.string('name').notNullable();
7
		table.string('icon', 30).notNullable().defaultTo('dashboard');
8
		table.text('note');
9
		table.timestamp('date_created').defaultTo(knex.fn.now());
10
		table.uuid('user_created').references('id').inTable('directus_users').onDelete('SET NULL');
11
	});
12

13
	await knex.schema.createTable('directus_panels', (table) => {
14
		table.uuid('id').primary().notNullable();
15
		table.uuid('dashboard').notNullable().references('id').inTable('directus_dashboards').onDelete('CASCADE');
16
		table.string('name');
17
		table.string('icon', 30).defaultTo('insert_chart');
18
		table.string('color', 10);
19
		table.boolean('show_header').notNullable().defaultTo(false);
20
		table.text('note');
21
		table.string('type').notNullable();
22
		table.integer('position_x').notNullable();
23
		table.integer('position_y').notNullable();
24
		table.integer('width').notNullable();
25
		table.integer('height').notNullable();
26
		table.json('options');
27
		table.timestamp('date_created').defaultTo(knex.fn.now());
28
		table.uuid('user_created').references('id').inTable('directus_users').onDelete('SET NULL');
29
	});
30
}
31

32
export async function down(knex: Knex): Promise<void> {
33
	await knex.schema.dropTable('directus_panels');
34
	await knex.schema.dropTable('directus_dashboards');
35
}
36

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.