У меня есть таблица «Node» с полями «id» и «name», также у меня есть таблица «Link», которая связывает Node между собой как многие-ко-многим.
Node
id | name
1 node1
2 node2
3 node3
4 node4
5 node5
6 node4
7 node5
Link
id | node_id | node2_id
1 1 2
2 2 3
3 3 5
4 2 4
5 3 6
6 3 7
node4 node7
| |
node1-->node2-->node3-->node6
|
node5
Как мне использовать python для генерации этого графа, списка или указания с помощью вложенных.
У меня проблема с построением алгоритма. У меня есть функция get_derrived с возвращенным списком производных элементов. Мой код:
c.tree = {}
def get_tree(node_id):
for node in get_derrived(node_id):
if not node in c.tree:
c.tree[node] = {}
get_tree(node.id)
get_tree(id)
В сумме у меня за узел1:
c.tree = {узел1: {}, узел2: {}, узел3: {}, узел4: {}, узел5: {}, узел6: {}, узел7: {}}
для узла 2:
c.tree = {узел2: {}, узел4: {}, узел3: {}, узел5: {}, узел6: {}, узел7: {}}
Но мне нужен dict {узел2: {узел4: {}, узел3: {узел7: {}, узел5: {}, узел6: {}}}}.