UUID или Alias в качестве ID?
===============================

 Всем привет. Есть небольшое непонимание как лучше поступить в формированием ID. Объясню на простом примере, чтобы было понятно.   

  

Есть модуль Блог. У него есть посты. Каждый пост имеет категорию.  

  

Вначале категорий было не много и решили эти категории сделать константами:  

```
const CATEGORY_BOOK = “book”;
const CATEGORY_EDUCATION = “education”;
```
  

Постепенно категории начинают увеличиться и способ добавления категорий через код уже не устраивает. Решение — вынести добавление категорий через базу данных.  

  

Но тут есть небольшая проблема. В качестве ID, в проекте, используется генерируемый UUID.   

  

1. Если перенести категории из кода в базу данных и использовать UUID в качестве ID, тогда нам придётся создать такую структуру:  

id(uuid), alias(из константы), title.   

  

В таком случае категории в постах имеют ссылку не по ID, а по alias. ID по сути и не нужен. Либо нужно заменить в постах alias на вновь сгенерированный ID. Как лучше?  

  

2. Использовать в качестве ID alias категорий из констант. И тогда у нас получается такая структура без UUID:  

id(из константы), title  

  

Подскажите как поступать в таких случаях когда сначала эта была константа и данных сохранялись из константы, а потом решили перенести в базу данных. Как быть? Как лучше?  

  

Спасибо за помощь! 

 Второй вариант не имеет никаких проблем если управление справочником идёт контролируемо и отсутствуют операции удаления