Django:如何使用pip安装的应用程序

时间:2017-11-24 16:52:42

标签: python django pip

我想利用Django的模块化并集成一些我使用pip安装的外部应用程序。但是,我在理解如何集成,使用或扩展其网址,视图和模型方面遇到了困难。关于这个问题并不多,我无法理解为什么。

我们以changuito-cart

为例
  1. 我是否在root中创建一个名为“changuito”的文件夹并在此处创建网址/视图,或者我应该创建一个名为它的新应用程序?

  2. 在settings.py中,我将“changuito”添加到我已安装的应用列表中,并且出现“没有名为'changuito'的模块”错误。如何正确添加?

  3. 整合它需要哪些基本步骤?

1 个答案:

答案 0 :(得分:1)

在安装应用程序并将其添加到您的INSTALLED_APPS之后,您应该很高兴。在某些情况下,您需要添加到INSTALLED_APPS的名称与包名称不同。这些情况应该从文档中显而易见,否则您需要查看模块结构本身。在您的情况下,该包被称为“django-changuito”,您必须在INSTALLED_APPS中包含“changuito”。还要注意,此特定包依赖于MIDDLEWARE_CLASSES设置。请阅读文档!

如果您使用的话,请确保在安装时激活了正确的虚拟环境。

通常,您不会修改外部应用程序本身。这将是非常危险的,因为它将开始与上游不同并打破道路。如果要子类化或扩展外部应用程序的类,则需要在扩展或猴子修补之前将这些类导入到您自己的应用程序中。在这种情况下,您将在另一个应用程序中创建一个不同的类。

最后,一些应用允许扩展模板。 Django将首先在您的项目结构中搜索模板和静态。如果您重新创建外部应用程序的文件夹结构并将新模板放在正确的位置。 Django将使用这些。