如何有效地更改第三方django应用程序?

时间:2018-06-03 16:26:53

标签: python django pypi

我正在使用django-leaflet的Django应用程序,但这个问题适用于任何python库。我想更改一些django-leaflet代码,看看这些更改是否能解决我们遇到的问题。我有什么选择?我是否需要在django-leaflet存储库中创建一个示例应用程序并在那里执行我的修改测试循环?或者我是否需要将个人重新命名的django-leaflet版本上传到pypi?

2 个答案:

答案 0 :(得分:1)

您可以使用class ListItem extends Component { render() { return ( <View> <Text>{this.props.title}<Text> <Image source={imageNames[this.props.imageName]} /> </View> ); } }; ListItem.propTypes = { title: PropTypes.string.isRequired, imageName: PropTypes.oneOf(Object.keys(imageNames)), }; // e.g. <ListItem imageName="orange" /> 卸载第三方应用,然后将应用复制(或git cloning)到源树中来修改第三方应用。您可能需要临时向pip uninstall文件添加sys.path.append("./django-leaflet")这样的行,以便第三方模块在范围内。

如果您对更改感到满意,可以将其作为拉取请求发送给原作者,或上传您自己的应用版本。

答案 1 :(得分:1)

您可以随时直接在site-packages/更改代码,但这需要对细节有一定程度的关注,以防止自己在脚下拍摄。

除此之外,您可以查看代码,并从包含第三方软件包setup.py的目录中查看

pip install -e .

(与python setup.py develop相似,但更好)

这将在site-packages/中安装指向源代码的链接,这样您就可以在第三方软件包中执行修改/测试循环,并在您自己的软件包中运行测试。

优势在于您将为您的更改提供VCS支持。