2012-05-30 4 views
1

Я интегрирую два приложения Django вместе, но считаю, что для этого требуется django-mptt version 3.x, а для другого требуется 5.x. Я не могу обновить приложение 3.x, потому что я не «владею» этим конкретным приложением, и он может понадобиться для некоторых старых зависимостей.Django Python: установите несколько версий одного и того же пакета в virtualenv

Есть ли какой-либо недостаток в forking и namespacing версии django-mptt 5.x, чтобы оба могут быть использованы? Я действительно ненавижу разветвлять его, и мне интересно, есть ли там лучшие варианты.

Просто интересно, что другие сделали в подобных ситуациях. Спасибо за чтение.

ответ

2

Это невозможно с обычными инструментами python, так как для этого используются virtualenv.

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

Но если ваша цель - не редактировать какой-либо код приложения, лучше использовать его, не играя с Python Path, и не передавать никаких импортов, связанных с зависимостями.

+0

Спасибо за ваши мысли, e-satis. –

Смежные вопросы