Как эффективно вносить изменения в стороннее приложение django? - PullRequest
0 голосов
/ 03 июня 2018

Я работаю над приложением Django, которое использует django-листовку, но этот вопрос относится к любой библиотеке Python.Я хочу изменить некоторый код Django-листовки, чтобы увидеть, решат ли изменения проблему, с которой мы столкнулись.Какие у меня варианты?Нужно ли мне создавать пример приложения в репозитории django-leaflet и преформовать там мой цикл modify-test?Или мне нужно загрузить отдельные переименованные версии django-листовки в pypi?

Ответы [ 2 ]

0 голосов
/ 03 июня 2018

Вы всегда можете изменить код непосредственно в site-packages/, хотя это требует определенного уровня внимания к деталям, чтобы не выстрелить себе в ногу.

Кроме этого, вы можете проверить код и,из каталога, содержащего setup.py стороннего пакета, выполните

pip install -e .

(что аналогично, но лучше, чем python setup.py develop)

. Будет установлена ​​ссылка на источники вsite-packages/, чтобы вы могли выполнить цикл изменения / тестирования в стороннем пакете и запустить тесты в своем собственном пакете.

Преимущество заключается в том, что у вас будет поддержка VCS для ваших изменений.

0 голосов
/ 03 июня 2018

Вы можете изменить свое стороннее приложение, удалив его с помощью pip uninstall, а затем скопировав (или сделав клонирование) приложение в дерево исходных текстов.Возможно, вам потребуется временно добавить строку, например sys.path.append("./django-leaflet"), в ваш файл manage.py, чтобы модули сторонних производителей оказались в области действия.

Когда вы будете довольны своими изменениями, вы можете отправить их в исходный файл.Автор как запрос на загрузку или загрузите собственную версию приложения.

...