Чтобы гарантировать его уникальность, добавьте порядковый суффикс - PullRequest
0 голосов
/ 01 августа 2020

Чтобы гарантировать его уникальность, проще всего использовать метку времени. Но есть ли другая реализация, кроме отметки времени? Также потенциально в будущем найти несколько имен файлов, которые являются обновлениями одних и тех же данных? Как использовать порядковый суффикс?

Потому что мне кажется, что метка времени слишком длинная, например 1596010248422. Любая идея ? спасибо.

# код, чтобы проверить, существует ли уже запись

const checkFilenameIFExists = () => async (context) => {
const record = await context.app.service('people')
  .Model.findByPk(context.data.peopleId);
if (!record) {
  throw new errors.BadRequest('People record does not exist.');
}
const file = await context.service.Model.findOne({
  where: { peopleId: record.id, filename: context.data.filename },
});

# код, чтобы сделать ее уникальной с использованием отметки времени

if (file) {
  let prefix = "." + Date.now().toString();
  context.data.filename += prefix
}

1 Ответ

0 голосов
/ 01 августа 2020

uuid - вариант для префикса. Хотя он длиннее, чем метка времени, он гарантированно будет уникальным.

import { v4 as uuidv4 } from 'uuid';

Установите префикс:

let prefix = "." + uuidv4();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...