mirror of
https://github.com/directus/directus.git
synced 2026-04-25 03:00:53 -04:00
Move system fields out of DB
This commit is contained in:
@@ -95,61 +95,3 @@ export default async function runSeed(database: Knex) {
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// async function insertRows(database: Knex) {
|
||||
// const rowSeeds = await fse.readdir(path.resolve(__dirname, './02-rows/'));
|
||||
|
||||
// for (const rowSeedFile of rowSeeds) {
|
||||
// const yamlRaw = await fse.readFile(
|
||||
// path.resolve(__dirname, './02-rows', rowSeedFile),
|
||||
// 'utf8'
|
||||
// );
|
||||
// const seedData = yaml.safeLoad(yamlRaw) as RowSeed;
|
||||
|
||||
// const dataWithDefaults = seedData.data.map((row) => {
|
||||
// for (const [key, value] of Object.entries(row)) {
|
||||
// if (value !== null && (typeof value === 'object' || Array.isArray(value))) {
|
||||
// row[key] = JSON.stringify(value);
|
||||
// }
|
||||
// }
|
||||
|
||||
// return merge({}, seedData.defaults, row);
|
||||
// });
|
||||
|
||||
// await database.batchInsert(seedData.table, dataWithDefaults);
|
||||
// }
|
||||
// }
|
||||
|
||||
// async function insertFields(database: Knex) {
|
||||
// const fieldSeeds = await fse.readdir(path.resolve(__dirname, './03-fields/'));
|
||||
|
||||
// const defaultsYaml = await fse.readFile(
|
||||
// path.resolve(__dirname, './03-fields/_defaults.yaml'),
|
||||
// 'utf8'
|
||||
// );
|
||||
// const defaults = yaml.safeLoad(defaultsYaml) as FieldSeed;
|
||||
|
||||
// for (const fieldSeedFile of fieldSeeds) {
|
||||
// const yamlRaw = await fse.readFile(
|
||||
// path.resolve(__dirname, './03-fields', fieldSeedFile),
|
||||
// 'utf8'
|
||||
// );
|
||||
// const seedData = yaml.safeLoad(yamlRaw) as FieldSeed;
|
||||
|
||||
// if (fieldSeedFile === '_defaults.yaml') {
|
||||
// continue;
|
||||
// }
|
||||
|
||||
// const dataWithDefaults = seedData.fields.map((row) => {
|
||||
// for (const [key, value] of Object.entries(row)) {
|
||||
// if (value !== null && (typeof value === 'object' || Array.isArray(value))) {
|
||||
// (row as any)[key] = JSON.stringify(value);
|
||||
// }
|
||||
// }
|
||||
|
||||
// return merge({}, defaults, row);
|
||||
// });
|
||||
|
||||
// await database.batchInsert('directus_fields', dataWithDefaults);
|
||||
// }
|
||||
// }
|
||||
|
||||
20
api/src/database/system-data/fields/index.ts
Normal file
20
api/src/database/system-data/fields/index.ts
Normal file
@@ -0,0 +1,20 @@
|
||||
import { requireYAML } from '../../../utils/require-yaml';
|
||||
import { merge } from 'lodash';
|
||||
import { FieldMeta } from '../../../types';
|
||||
import fse from 'fs-extra';
|
||||
import path from 'path';
|
||||
|
||||
const defaults = requireYAML(require.resolve('./_defaults.yaml'));
|
||||
const fieldData = fse.readdirSync(path.resolve(__dirname));
|
||||
|
||||
export let systemFieldRows: FieldMeta[] = [];
|
||||
|
||||
for (const filepath of fieldData) {
|
||||
if (['_defaults.yaml', 'index.ts'].includes(filepath)) continue;
|
||||
|
||||
const systemFields = requireYAML(path.resolve(__dirname, filepath));
|
||||
|
||||
for (const field of systemFields.fields) {
|
||||
systemFieldRows.push(merge({}, defaults, field));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user