2010-01-21 9 views
5

Django सेटिंग्स में पाइथन वैरिएबल की एक सूची शामिल है जिसका उपयोग डेटाबेस सेटिंग्स से स्थापित ऐप्स से अधिक चीजों के लिए किया जाता है। यहां तक ​​कि कई पुन: प्रयोज्य ऐप्स कुछ सेटिंग्स को आवश्यक बनाते हैं।Django गतिशील सेटिंग्स बुनियादी ढांचे और सर्वोत्तम प्रथाओं

कई दर्जनों साइटों के साथ, सभी परियोजनाओं की सेटिंग्स का प्रबंधन करना मुश्किल है।

सौभाग्य से सेटिंग्स चर के साथ सिर्फ एक पायथन मॉड्यूल है, इसलिए आप इच्छित वैरिएबल को पॉप्युलेट करने के लिए कोई जादू कर सकते हैं।

आपने किस प्रथाओं का पालन किया है या आपको लगता है कि विभिन्न संबंधित सेटिंग्स को विभिन्न फाइलों में अलग करने के लिए उपयोग किया जा सकता है?

जाहिर है, मौजूदा enterprisey अभ्यास कि एक डेवलपर एक युद्ध बनाता है और ऑप्स विभाग bluefish को यह थप्पड़ और सभी डेटाबेस (और इस तरह) ऑप्स सामान (Jacob's email के अनुसार) का ख्याल रखता है है।

क्या गतिशील settings.py क्या आप बना सकते हैं जो मौजूदा उद्यम प्रथाओं की सहायता करेगा?

+0

https://code.djangoproject.com/wiki/SplitSettings#ini-stylefilefordeployment –

उत्तर

1

की तरह कुछ के साथ अक्सर मैंने देखा है सेटिंग्स फाइलें: डेटाबेस कनेक्शन जैसी चीजों

from localsettings import * 

और localsettings.py में और DEBUG मूल्यों परिभाषित कर रहे हैं। प्रत्येक तैनाती पर्यावरण (देव/स्टेजिंग/उत्पादन इत्यादि) के लिए localsettings.py (या हो सकता है) अलग है, और अन्य सभी चीज़ों के साथ स्रोत नियंत्रण में नहीं रहता है।

कुछ मैं हाल ही में उपयोगी पाया है मेरी settings.py में इस डाल रहा है:

try: 
    from localsettings import * 
except ImportError: 
    from default_localsettings import * 

default_localsettings.py में मैं चूक का एक समूह को परिभाषित (DEBUG = True, default_localsettings.py आदि उसी निर्देशिका में एक SQLite डेटाबेस का उपयोग करें)।

यह चीजों को स्थापित करने के बाद उपयोगी नहीं हो सकता है, लेकिन मुझे अपने प्रोजेक्ट को स्रोत नियंत्रण से बाहर करने में सक्षम होने के लिए उपयोगी पाया गया है और इसे runserver का उपयोग करके सीधे काम करना है, बिना कुछ सेट किए अप।

संबंधित मुद्दे