我注意到在django項目中註冊應用程序的不同方法。 例如,如果我有一個名爲Catalog的應用程序,可以在settings.py中使用應用程序'catalog'的名稱或更長的名稱'catalog.apps.CatalogConfig'。 有什麼區別,哪一個更準確的方式來註冊一個應用程序?正確的方法在Django註冊應用程序
0
A
回答
1
你(應用程序用戶)應該只關心應用程序的名稱:
INSTALLED_APPS = (
...
'rock_n_roll',
...
)
這是因爲應用程序作者子類AppConfig
配置和他們的應用程序提供正確的名稱:
# rock_n_roll/apps.py
from django.apps import AppConfig
class RockNRollConfig(AppConfig):
name = 'rock_n_roll'
verbose_name = "Rock ’n’ roll"
這將導致
RockNRollConfig
被使用時INSTALLED_APPS
只包含rock_n_roll
。這使您可以使用AppConfig
功能,而無需用戶更新其INSTALLED_APPS
設置。除了這個用例之外,最好避免使用default_app_config
,而是在INSTALLED_APPS
中指定應用配置類,如下所述。
爲什麼要使用AppConfig
?
重要的是要明白,Django應用程序只是一組與代碼框架的各個部分交互的代碼。沒有像Application對象那樣的東西。然而,Django需要與已安裝的應用程序進行交互,這主要是爲了配置和內省。這就是爲什麼應用程序註冊表爲每個已安裝的應用程序在
AppConfig
實例中維護元數據的原因。
相關問題
- 1. 在應用程序正確註冊
- 2. Google Data/OAuth/AppEngine/Python - 正確註冊一個Web應用程序
- 3. 在Python中註冊信號處理程序的正確方法是什麼?
- 4. 從電話應用程序註冊用戶的好方法
- 5. 應用程序註冊
- 6. 註冊iphone應用程序
- 7. 錯誤overiding保存方法,同時擴展Django註冊應用程序
- 8. 誰擁有註冊的微軟應用程序註冊門戶應用程序?
- 9. 使用Unity註冊EF4 ObjectContext的正確方法?
- 10. 什麼是註冊用戶配置文件的正確方法?
- 11. 在註冊後獲取令牌的正確方法是什麼?
- 12. 後整合懶惰註冊與Django註冊的方法
- 13. 應用程序的註冊表錯誤的Django 1.8
- 14. Django項目/應用程序佈局 - 正確的方式?
- 15. 在mvc應用程序中註冊ServiceRoute?
- 16. MvvmLight消息 - 註冊和取消註冊消息的正確方法是什麼?
- 17. 以編程方式在Azure上註冊應用程序AD
- 18. 未在Mono MVC 3下正確註冊的HTTP處理程序
- 19. Django(-CMS)Userwarning:沒有註冊的應用程序
- 20. 什麼是確定應用程序位置的正確方法?
- 21. 在Django註冊應用程序中,在Django中使用帳戶/個人資料的好地方在哪裏?
- 22. django的註冊的應用程序和Django的1.5自定義用戶模型
- 23. 在python中創建[self] respawning應用程序的正確方法
- 24. 在WP7中構建應用程序欄的正確方法
- 25. 在iOS上測試應用程序更新的正確方法?
- 26. Android新應用程序(註冊過程)
- 27. 在django註冊
- 28. Android應用程序的註冊驗證
- 29. 註冊應用程序類的清單?
- 30. 正確地註冊一個可以處理網站的應用程序