Я создаю приложение React, в котором мои данные имеют следующую структуру:
interface BookCase {
id: number;
bookShelves: BookShelf[];
}
interface BookShelf {
id: number;
}
Каждый книжный шкаф и каждая книжная полка имеет свойство id.Я использую это для атрибута key
и для поиска книжной полки внутри массива bookShelves.Идентификатор генерируется в бэкэнде базой данных (с BigSerial
в PostgreSQL) при сохранении.
Теперь я хочу создать новый книжный шкаф внутри моего интерфейса без , сразу же сохранив его вбэкэндСначала я хочу поработать с ним, выполнить с ним некоторые операции (например, поместить книгу на полку), а затем отправить всю серию изменений с новыми сущностями в серверную, где она затем будет сохранена в базе данных.
Конечно, у меня еще нет идентификатора, хотя он мне нужен для работы с книжными шкафами.Должен ли я переписать свое приложение, чтобы также принять null
для идентификатора (я бы предпочел не делать этого)?Должен ли я просто случайно создать временный идентификатор, возможно, с дубликатами с идентификаторами, уже присутствующими в базе данных (или, например, использовать отрицательное значение, например -1)?Затем мне нужно будет заменить все идентификаторы после того, как они были сохранены в базе данных.
С UUID я мог бы сгенерировать их на внешнем интерфейсе, но я думаю, что также должен быть общий шаблон для работы только сувеличивающие целые числа в качестве идентификатора.