有没有像Django宝石这样的东西 - 插件,就像Ruby宝石一样

Too*_*eli 7 python django

有没有像Django宝石这样的东西 - 插件,就像Ruby宝石一样,

像auth管理插件等

Ein*_*ama 6

它被称为Django 世界中的应用程序。

您可以在这里找到其中一些: https: //www.djangopackages.com/


dan*_*nny 5

为了向其他答案添加更多细节,相当于Ruby的宝石就是Python"鸡蛋".我不知道Ruby所以我不确定等价是多么精确,但egg基本上是Python包的安装文件 - 它们提供有关安装哪些软件包的Python信息.通常通过./setup.py install从包目录中运行或使用setuptools 来创建egg(即pip install NAME-OF-PACKAGE后一种方法通常更容易,因为它将为您下载文件并安装所有必需的依赖项).应该注意的是,任何包(任何包含文件的__init__.py文件夹)或放在PYTHONPATH上的模块都可以由Python导入; 安装它们只是帮助跟踪正在使用的软件包,并使处理具有大量依赖性的复杂软件包变得更容易.

在Django中,正如@EinLama所提到的,这些附加软件包用作应用程序(它们通常包括models.py,views.py,urls.py等文件).其中一些实际上是由Python安装的,如上所述,有些只是应放在PYTHONPATH上的文件夹(在这两种情况下你还必须将它们添加到settings.py文件中的已安装应用程序中,以便Django知道它们) .此外,我经常遇到(开源)软件包几乎可以完成我想要的,但不完全是,或者设计的方式是必须更改以将应用程序集成到我的项目中的细节是硬编码的.在这些情况下,我经常将应用程序直接放在我的项目文件夹中,在那里我可以根据需要进行更改并访问它,就好像它是我的任何其他应用程序一样.在这种情况下,软件包当然仅限于特定的Django项目 - 它永远不会被Python安装,也不会创建egg.

希望能澄清一点事情.


phi*_*dad 4

Python Eggs 很像 Ruby Gems。我确信其中一些为 Django 添加了功能。还有像Django Extensions这样的东西