我有一個應用程序需要用戶具有特定的目錄結構,就像django用templatetags做的那樣,我想知道的是如何在運行時從django項目中導入名爲foo的應用程序?
此外,如果應用程序存在,我應如何導入應用程序foo的特定模塊?如何創建一個需要特定模塊運行的django應用程序?
回答
我認爲你的問題需要一些澄清細節。目前,它似乎把應用程序一樣簡單你的PYTHONPATH(你的意思是一個Django應用程序嗎?)(例如項目目錄內):
try:
import foo
except ImportError:
pass # application mustn't be on pythonpath
else:
from foo import specific_module
# do stuff
根據您的要求,該代碼可以在一個視圖,或者甚至您的項目的__init__.py
,如果你想它發生得很早。 django啓動過程的改進即將到來 - 留意startup.py
的功能。
如果您需要導入動態名稱模塊,你可能想看看__import__
你也有被稱爲django.utils.importlib.import_module的Django內的helper方法(它使用__import__
)
django如何做到這一點?他們也使用__import__嗎? – 2011-03-07 07:26:42
是的,雖然它特別使用'django.utils.importlib.import_module'中的包裝器(它使用'__import__') – DrMeers 2011-03-07 08:34:52
比那應該是你的答案。 – 2011-03-07 13:46:14
- 1. 如何創建一個基於模塊的php應用程序
- 2. 如何創建一個.jar運行命令行應用程序
- 3. 如何創建一個後臺運行的Cocoa應用程序?
- 4. 如何創建一個簡單模塊來注入應用程序模塊?
- 5. 如何創建一個便攜式的應用程序(無需安裝運行)
- 6. 如何使應用程序以一個特定名稱運行?
- 7. 如何構建java桌面應用程序運行時模塊?
- 8. 需要建議創建一個聊天應用程序
- 9. 需要創建一個需要其他AMD模塊的UI5自定義控件
- 10. 如何創建一個模式鎖定應用程序
- 11. 使用Django模型的應用程序需要是Django應用程序嗎?
- 12. 如何禁用特定模塊的即時運行重建?
- 13. 需要創建一個有用的Java開發Netbeans模塊
- 14. 用一些共享模塊創建兩個netbeans應用程序
- 15. 在VS2010中創建一個「肯定運行」的應用程序/安裝程序
- 16. 創建一個在Win7模式和Metro模式下運行的應用程序
- 17. 如何創建一個MFC應用程序來運行setup.exe(msi安裝程序)?
- 18. (Matlab)想要創建一個MATLAB程序,不需要Matlab來運行它
- 19. 有沒有一個應用程序從django模型創建UML?
- 20. 如何整合zend模塊來創建一個正在運行的應用程序
- 21. 需要創建一個django相冊
- 22. 什麼特權需要在SharePoint 2013中創建應用程序?
- 23. 需要關於如何創建移動應用程序的指導,從創建到部署到運行
- 24. 創建一個運行一次只-Java應用程序
- 25. Django的:如何在另一個模塊中創建自定義的模型
- 26. 創建一個定時應用程序
- 27. 在Django中,如何從另一個應用程序的模型中獲取當前運行的應用程序?
- 28. 如何在Django應用程序中包含自定義模塊
- 29. 創建一個應用程序運行的jar文件
- 30. 需要一個java程序來創建方法模板
您的應用程序是否完全具有django的目錄結構,或者它真的只是「非常像django」。你想讓Django使用這個目錄(使用models/templatetags)嗎?只需將您的應用程序添加到INSTALLED_APPS。之後,您可以通過「從my_app導入my_module」導入 – 2011-03-07 02:05:28
http://docs.python.org/tutorial/modules.html – 2011-03-07 05:09:15
@Torsten:我的應用程序沒有目錄結構。它只知道用戶的項目將有一個名爲foo的應用程序。 – 2011-03-07 07:01:53