假設我的Django項目有一些全局設置,存儲在文本文件中以便於編輯。我想加載設置,然後存儲這些變量,以便可以從我的任何視圖函數訪問它們。但是,我已經讀過,Django中的全局變量是不鼓勵的。那麼,我該怎麼做呢?我知道如何將這些變量存儲在一個數據庫中,但這似乎矯枉過正只是爲了存儲一些簡單的變量。Django:全局設置變量
6
A
回答
4
只需將變量存儲在settings.py
中,這是存儲項目特定設置的最佳方法。然後,你可以隨時通過導入django.conf.settings
訪問它們:
from django.conf import settings
print settings.MY_SETTING
希望有所幫助。
7
正如alecxe已經指出的那樣,您可以使用settings系統。這是設置必須在項目範圍內使用的值的習慣方式。如果您閱讀我已鏈接的文檔,您會發現它們很早就在該頁面上涵蓋了如何設置自己的設置。
當你使用Django的設置系統時,你不能做的一件事就是參考模塊頂層的設置。例如,如果你有,這是否一個觀點:
from django.conf import settings
FOO = settings.FOO
(或者alecxe是print
聲明)。這將防止重寫值。文檔here查看詳細信息。我記得在測試中遇到了問題,因爲我的一些測試試圖覆蓋默認值,並且失敗了。
上面提到的設置系統應該用於在啓動時設置的值,而不是在之後改變。如果您想記錄網站管理員在運行時可以更改的設置,則應該使用某種數據庫。
+0
我有一個關於Django視圖中的全局變量的問題。可以請提供您的意見? http://stackoverflow.com/questions/39490843/django-app-level-variables –
相關問題
- 1. 在django中設置全局變量
- 2. 與全局變量設置
- 3. ngresource設置全局變量
- 4. 設置全局變量Codeigniter
- 5. Codeigniter:設置'全局變量'
- 6. jQuery設置全局變量
- 7. 設置全局/局部變量
- 8. 量角器設置全局變量
- 9. Python的Django全局變量
- 10. Django,全局模板變量
- 11. 設置一個全局變量與局部變量
- 12. 在中間件的Django中設置「全局預請求變量」
- 13. django在模板中設置全局變量
- 14. django中間件設置用戶特殊全局變量
- 15. 使用全局變量(),以增加Django的設置
- 16. 全局變量比。設置功能
- 17. 在jQuery中設置全局變量
- 18. 設置一個JavaScript變量全局
- 19. 全局變量未設置值正常
- 20. Yii全局變量和設置問題
- 21. 在Drools中設置全局變量
- 22. Swift 3設置全局變量值
- 23. 在grails中設置全局變量
- 24. 在c#中設置全局變量class
- 25. 在jQuery中設置全局變量onclick
- 26. 在MS Access中設置全局變量
- 27. 如何設置全局變量和
- 28. AngularJS:設置全局變量AJAX
- 29. 在線程中設置全局變量
- 30. 無法設置全局變量javascript
我有一個關於Django視圖中的全局變量的問題。可以請提供您的意見? http://stackoverflow.com/questions/39490843/django-app-level-variables –