Dgraph: создать край без предварительного знания UID - PullRequest
0 голосов
/ 05 февраля 2020

Я экспериментирую с dgraph, и до сих пор моя самая большая проблема - создать грань между двумя объектами без предварительного знания их идентификаторов (для массовой загрузки). Пример - давайте иметь два типа - родительский и дочерний, единственное отличие состоит в том, что дочерний элемент всегда является листовым узлом, поэтому схема может выглядеть примерно так:

<name>: string .
<age>: int .
<children>: [uid] .

type Parent {
    name
    age
    children
}

type Child {
    name
    age
}

Теперь я хотел бы вставить три узла - два родителя. и один ребенок - и создайте грань между ними, используя один запрос, без предварительного запроса uid. Я представляю что-то вроде этого:

{
    "set": [
        {
            "name": "Kunhuta",
            "age": 38,
            "dgraph.type": "Parent"
        },
        {
            "name": "Vendelin",
            "age": 41,
            "dgraph.type": "Parent"
        },
        {
            "name": "Ferko",
            "age": 14,
            "dgraph.type": "Child",
            "Parent": [
                {
                    "name": "Kunhuta"
                },
                {
                    "name": "Vendelin"
                }
            ]
        }
    ]
}

(Предположим, имена являются уникальными идентификаторами типов)

Возможно ли как-то сделать это в dgraph?

...