Как наложить ограничения на значения атрибутов документа в ArangoDB?

Я хочу, чтобы документы в коллекции имели значения, ограниченные небольшим набором значений. Например, атрибут документа my_type может иметь значение только одного из a, b, c, or d.

Как это можно сделать в ArangoDB?

Я не хочу делать это в логике внешнего приложения и надеюсь, что мой единственный выбор - не микросервис Foxx. Возможно, я слишком много пытаюсь мыслить в SQL, но я надеюсь, что на уровне базы данных будет ограничение реляционного типа. Возможно ли это в ArangoDB? Как бы это сделать?


person BugBuddy    schedule 23.12.2018    source источник
comment
Есть идея проверки схемы на стороне сервера, но неясно, как именно она должна работать, и ее может быть сложно реализовать для кластеров. Я добавил ссылку на ваш пост во внутренний тикет. КСТАТИ. нечто подобное уже было задано ранее, также с Фоксом в качестве ответа: stackoverflow.com/questions/47828441/   -  person CodeManX    schedule 24.12.2018


Ответы (1)


Это невозможно сделать без применения Foxx joi или какой-либо другой проверки схемы, потому что ArangoDB не имеет схемы. Единственное ограничение, которое вы можете применить к коллекции без Foxx, является уникальным индексом для некоторого атрибута.

person sevcik.tk    schedule 24.12.2018