Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Gremlingo: Traverser tidak memetakan nilai apabila menambah tepi antara dua bucu

Gremlingo: Traverser tidak memetakan nilai apabila menambah tepi antara dua bucu

王林
王林ke hadapan
2024-02-08 22:51:34420semak imbas

Gremlingo: Traverser tidak memetakan nilai apabila menambah tepi antara dua bucu

editor php Zimo akan memperkenalkan kepada anda hari ini satu fenomena menarik yang dipanggil Gremlingo. Apabila kita menambah tepi antara dua bucu graf, traverser biasanya tidak memetakan kepada nilai yang sepadan. Fenomena ini mungkin membawa kepada ralat logik dalam atur cara, jadi kita perlu mengendalikannya secara khusus. Dalam artikel ini, kami akan membincangkan punca dan penyelesaian fenomena Gremlingo secara terperinci untuk membantu pembaca menangani masalah ini dengan lebih baik.

Kandungan soalan

Saya menggunakan tinkerpop gremling-go untuk mengakses gremlin-server/janusgraph. Apabila cuba mencipta tepi antara dua bucu, saya mendapat ralat berikut

the provided traverser does not map to a value: ...

Bucu ditambah oleh

t.addv("somenode").property("some_id", someid).iterate()

dan

t.addv("someothernode").property("some_id", someid).iterate()

Yang t*gremlingo.graphtraversal. Puncak berjaya ditambahkan.

Tepi ditambah oleh

t.AddE("someedge").
        From(
            __.V().
                HasLabel("somenode").
                Has("some_id", someID),
        ).
        To(
            __.V().
                HasLabel("someothernode").
                Has("some_id", someID),
        ).
        Iterate()

di mana t*gremlingo.graphtraversal ,而 __gremlingo.t__ , dan __ ialah alias untuk gremlingo.t__. Tepi tidak dibuat dan keluaran ralat di atas muncul.

Menggunakan gremlin-console melalui g.adde("someedge").from(__.v().haslabel("somenode").has("some_id","some_id_1")).to(__. v().haslabel("someothernode").has("some_id","some_id_1")) 其中 g adalah traversal berfungsi dengan baik.

Sila ambil perhatian bahawa saya telah meninggalkan pengendalian ralat pergi.

Penyelesaian

Adakah anda sedang menunggu permintaan async selesai?

channel := t.AddV("somenode").Property("some_id", someID).Iterate()

err :=

Atas ialah kandungan terperinci Gremlingo: Traverser tidak memetakan nilai apabila menambah tepi antara dua bucu. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:stackoverflow.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam