2015-08-24 42 views
2

假設我想大量定製第三方Django應用程序,例如django-postman(添加大量新模型,視圖以及修改現有的等)。什麼是最好的方法來做到這一點?Django:大量定製第三方應用程序時的最佳實踐

選項,我認爲:

  1. 叉第三方回購。在我的django項目之外的本地克隆。做更新,把他們推到分叉的回購。將我自己的叉子安裝到我的venv中(並添加到我的requirements.txt中)以供我的django項目使用。

  2. 只需克隆到我的django項目的vendors文件夾中,在那裏更新第三方應用程序,然後將其保存在與django項目相同的git倉庫中。

無論哪種方式,我擔心將不再獲得來自主要第三方回購更新(bug修復,新功能等),或者如果我融入叉(改變批次後)也可能是一個很頭痛的問題。

我在想最好的方法嗎?有更聰明的方法嗎?別人通常會做什麼?

回答

0

我會考慮離開第三方應用程序,並嘗試在項目內部進行自定義。如果這是不可能的,並且需要大量的定製,也許有一種替代您正在使用的應用程序?

除此之外,我會去你的第一個選項。但是你的擔心是有原因的。如果您決定製作自己的叉子,則還需要考慮錯誤和修復。但是,對於第一個選項,我認爲將原始文件合併到您的分叉會更容易。但不要忘記關注的分離。否則,它將很難保持。

-1

如果你正在不改變方式第三方應用程序是如何運作的變化,但它更像是增加新的功能或其他方法,即應用程序,可以考慮使用該應用的作者日期接觸,以實現您的更改到它。這樣在更新此應用程序時,您的工作量會減少很多。