Кажется, работает алгоритм bellman_ford_predecessor_and_distance. Если расстояние < = -100, то шар остановился на узле предшественника, поэтому я скопировал график, удалил соответствующие ребра и снова запустил алгоритм для проверки.
import networkx as nx
G = nx.DiGraph()
G.add_edge(1, 2, weight= -50)
G.add_edge(2, 3, weight= 40)
G.add_edge(3, 4, weight= -50)
G.add_edge(4, 5, weight= -90)
G.add_edge(1, 6, weight= -105)
G.add_edge(6, 7, weight= 110)
pred, dist = nx.bellman_ford_predecessor_and_distance(G, 1)
print(pred, dist)
F = G
for x, y in dist.items():
if y <= -100:
z = pred.get(x)[0]
F.remove_edge(z,x)
pred, dist = nx.bellman_ford_predecessor_and_distance(G, 1)
print(pred, dist)
Вы можете поговорить с Алексом Гейнором , поскольку он добавляет поддержку MultiDB и ее возможный выпуск в Django 1.2 . Я уверен, что он будет признателен за отзывы и вклад тех, кто собирается использовать MultiDB. Это обсуждается в основном списке django-developers . Его ветвь MultiDB может быть даже пригодна, я не уверен.
Поскольку я думаю, вы, вероятно, не можете дождаться, и если ветка MultiDB непригодна, вот ваши варианты.
Подводя итог. Я думаю, что взлом MultiDB в Django, вероятно, неправильный путь, если только вы не будете готовы поддерживать свои хаки позже. Поэтому я думаю, что другой ORM или доступ к базе данных предоставят вам самый чистый путь, поскольку тогда вы не выходите с поддерживаемыми функциями и, в конце концов, все это просто Python.
Я исхожу из предположения, что одна, вероятно, будет более ориентирована на Django, а другая - это устаревшая база данных.Подводя итог. Я думаю, что взлом MultiDB в Django, вероятно, неправильный путь, если только вы не будете готовы поддерживать свои хаки позже. Поэтому я думаю, что другой ORM или доступ к базе данных предоставят вам самый чистый путь, поскольку тогда вы не выходите с поддерживаемыми функциями и, в конце концов, все это просто Python.
Я исхожу из предположения, что одна, вероятно, будет более ориентирована на Django, а другая - это устаревшая база данных.Подводя итог. Я думаю, что взлом MultiDB в Django, вероятно, неправильный путь, если только вы не будете готовы поддерживать свои хаки позже. Поэтому я думаю, что другой ORM или доступ к базе данных предоставят вам самый чистый путь, поскольку тогда вы не выходите с поддерживаемыми функциями и, в конце концов, все это просто Python.
This probably isnt the answer your looking for, but it
s probably best if you move everything you need into the one database.
Моя компания добилась успеха в использовании нескольких баз данных, внимательно следя за этим сообщением в блоге: http://www.eflorenzano.com/blog/post/easy-multi-database-support- django /