В настоящее время у меня есть структура rethink-db, которая требует, чтобы любой документ в таблице foo
имел массив объектов типа bar
, каждый из которых должен иметь отдельный идентификатор. Однако RethinkDB генерирует ключи только для новых foo
документов, но не для bar
записей в новых foo
документах.
Я думал о простой генерации UUID для вложенных элементов, однако это кажется менее чистым решением, поскольку RethinkDB генерирует ключи самостоятельно. Кроме того, есть функция RethinkDB.uuid()
, на которую я смотрел, хотя она не обязательно указывает, используется ли она для ключей, - только то, что она генерирует UUID. Я не хочу зависеть от того, что RethinkDB никогда не изменит свою раскладку клавиш.
Причина всего этого заключается в том, что я хочу иметь возможность доступа и различать вложенные записи. Обычно в таких базах данных, как SQLite, я бы использовал для этого внешние ключи, однако, насколько я понимаю, в RethinkDB я бы просто вкладывал объект в качестве подобъектов основного документа. Хотя без ключей я не могу больше различать эти вложенные объекты.