Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
应用程序的django python包_Django - Fatal编程技术网

应用程序的django python包

应用程序的django python包,django,Django,我们希望在项目目录之外创建django应用程序 我们是否需要通过创建setup.py来创建python包并将其安装到站点包中 当in-app嵌入到项目文件夹中时,这是如何工作的?(我在任何地方都看不到setup.py) 我想我不明白什么时候制作一个软件包,什么时候不制作。为了只包含一个来自外部位置的应用程序,我通常使用以下方法: main -__init__.py -manage.py -urls.py -settings.py -foo -__init__.py

我们希望在项目目录之外创建django应用程序

我们是否需要通过创建setup.py来创建python包并将其安装到站点包中

当in-app嵌入到项目文件夹中时,这是如何工作的?(我在任何地方都看不到setup.py)


我想我不明白什么时候制作一个软件包,什么时候不制作。

为了只包含一个来自外部位置的应用程序,我通常使用以下方法:

main
  -__init__.py
  -manage.py
  -urls.py
  -settings.py
  -foo
    -__init__.py
    -models.py
    -views.py
    -admin.py

external
  -__init__.py
  -bar
    -__init__.py
    -models.py
    -views.py
    -admin.py
假设我们希望将
external.bar
作为应用程序包含在django项目
main

首先确保在
main
external
settings.py
中位于
sys.path
上,以便python可以找到它:

import sys
sys.path.append("/path/to/external")
然后只需将
external.bar
添加到已安装的应用程序:

INSTALLED_APPS = (
    'django.stuff',
    'main.foo',
    'external.bar',
)

然后
admin.auto_discover()
应该找到你的
external.bar
应用程序并为其加载管理员。

你想单独分发它还是只想为某些应用程序创建一个单独的项目?另请参见我希望应用程序与项目分开