2013-03-20 55 views
0

我們希望在項目目錄之外創建django應用程序。適用於應用程序的django python軟件包

我們是否需要通過創建setup.py並將其安裝到站點包中來創建python包?

在應用程序嵌入項目文件夾時,這是如何工作的? (我沒有在任何地方看到setup.py)。

我想我不知道什麼時候打包,什麼時候不打包。

+0

你想單獨分發它還是你只是想爲一些應用程序的單獨項目? – RickyA 2013-03-20 15:03:33

+0

另請參閱[this](http://stackoverflow.com/questions/1457511/creating-a-redistributable-django-app) – RickyA 2013-03-20 15:04:07

+0

我希望應用程序與項目分離 – 2013-03-20 16:04:07

回答

1

要只包含來自外部位置,我通常使用下面的應用程序:

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的應用程序。

首先確保在mainsettings.pyexternal是在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應用程序併爲其加載管理員。

相關問題