2011-05-26 25 views
9

मैं अपने प्लोन उत्पादों में बिल्डआउट से कॉन्फ़िगरेशन जानकारी कैसे शामिल करूं?मैं अपने प्लोन उत्पादों में बिल्डआउट से कॉन्फ़िगरेशन कैसे प्राप्त करूं?

प्लोन उत्पादों में से एक जो मैं पढ़ रहा हूं और फाइल सिस्टम से जानकारी लिखता हूं और लिखता हूं। यह वर्तमान में अंडे नामस्थान के अंदर करता है (उदाहरण के लिए प्लोन/उत्पाद/निर्देशिका के अंदर), लेकिन यह मेरे लिए बिल्कुल सही नहीं दिखता है।

विचार यह जानकारी कॉन्फ़िगर करने योग्य पथ में संग्रहीत करने के लिए किसी स्थान को कॉन्फ़िगर करना है, जैसे iw.fss और iw.recipe.fss करता है।

उदाहरण के लिए, उस जानकारी को $ {buildout: directory}/var/mydata पर सहेजें।

+0

क्या कॉन्फ़िगरेशन जानकारी आप शामिल है और क्यों चाहते हैं? कृपया प्रश्न में अधिक जानकारी जोड़ें। – aclark

+0

मैंने प्रश्न में और विवरण जोड़ा। इसे स्पष्ट करने की उम्मीद है :) –

उत्तर

17

आप plone.recipe.zope2instance भाग के zope-conf-अतिरिक्त अनुभाग के माध्यम से अपने zope.conf फाइल करने के लिए विन्यास वर्गों जोड़ सकते हैं:

[instance] 
recipe = plone.recipe.zope2instance 
... 
zope-conf-additional = 
    <product-config foobar> 
     spam eggs 
    </product-config> 

किसी भी नामित उत्पाद-config अनुभाग फिर एक के रूप में उपलब्ध है किसी भी पायथन उत्पाद के लिए सरल शब्दकोश जो इसकी तलाश करने की परवाह करता है; उपरोक्त उदाहरण 'foobar' प्रविष्टि बनाता है जो एक 'स्पैम': 'अंडे' मैपिंग वाला एक नियम है। यहाँ है कि कैसे आप तो का उपयोग अपने कोड से कि:

from App.config import getConfiguration 
config = getConfiguration() 
configuration = config.product_config.get('foobar', dict()) 
spamvalue = configuration.get('spam') 
+0

पवित्र _! मैं उस पर कभी नहीं आऊंगा। यह इतना आसान है कि यह पापी है! – Auspex

+0

धन्यवाद, यह है! यह एक सम्मोहन की तरह काम करता है। –