2012-08-31 16 views
5

मैं अपने पोर्टल उत्पाद में अपनी प्लोन सत्र कॉन्फ़िगरेशन निर्यात करना चाहता हूं।प्लोन सत्र कॉन्फ़िगरेशन कैसे निर्यात करें?

सत्र विन्यास ZMI के माध्यम से सेट किया गया है -> एसीएल उपयोगकर्ताओं -> सत्र -> गुण

मैं इस साइट का एक स्नैपशॉट बनाने की कोशिश की है लेकिन स्नैपशॉट एक्सएमएल के भीतर सत्र विन्यास का पता नहीं लगा सकते हैं ..

उत्तर

4

वास्तव में, plone.session में कोई जेनेरिकसेट सेटअप कॉन्फ़िगरेशन समर्थन शामिल नहीं है; वर्तमान में कुछ भी नहीं है जो इसे आपके लिए निर्यात करेगा, न ही सेटिंग्स को आयात करने के लिए कुछ भी।

इसके बजाय आपको इसके लिए एक सेटअप चरण लिखना होगा, और इसके माध्यम से मैन्युअल रूप से सत्र प्लगइन को कॉन्फ़िगर करना होगा।

अपने configure.zcml विन्यास फाइल करने के लिए एक आयात कदम जोड़ें:

<?xml version="1.0"?> 
<configure 
    xmlns="http://namespaces.zope.org/zope" 
    xmlns:genericsetup="http://namespaces.zope.org/genericsetup" 

<genericsetup:importStep 
    name="yourpackage.a_unique_id_for_your_step" 
    title="Configures the plone.session plugin" 
    description="Perhaps an optional description" 
    handler="your.package.setuphandlers.setupPloneSession" 
    /> 

</configure> 

और नाम एक ही प्रोफ़ाइल निर्देशिका youpackage.setup-plonesession.txt

तो करने के लिए एक खाली 'प्रहरी' पाठ फ़ाइल जोड़ने (अपने पैकेज के लिए एक setuphandlers.py मॉड्यूल जोड़ने उपर्युक्त उदाहरण में handler अंक):

def setupPloneSession(context): 
    if context.readDataFile('youpackage.setup-plonesession.txt') is None: 
     return 

    portal = context.getSite() 
    plugin = portal.acl_users.session 

    # Configure the plugin manually 
    plugin.path = '/' 
    plugin.cookie_name = '__ac' 
    plugin.cookie_domain = '' 

    # Set up a shared auth_tkt secret 
    plugin._shared_secret = 'YourSharedSecretKey' 
    plugin.mod_auth_tkt = True 

नोट था टी पहली बार परीक्षण करता है अगर सेंटीनेल फ़ाइल मौजूद है; यदि आप कहीं और अपने पैकेज सेटअप का पुन: उपयोग करते हैं तो सेटअप चरण कई बार चलाया जा सकता है यदि आप ऐसा नहीं करते हैं।

आपको कॉन्फ़िगर करने के बारे में एक विचार प्राप्त करने के लिए आपको plugin source का संदर्भ देना होगा, मुझे डर है।

+0

यह एक शानदार जवाब है मार्टिजन धन्यवाद! –

+1

आपको import_steps.xml का कभी भी उपयोग नहीं करना चाहिए क्योंकि यह एक सतत आयात चरण बनाता है जो आपकी साइट को तोड़ देगा यदि आप एडन को हटा दें। आपको आयात चरणों की घोषणा करने के लिए zcml का उपयोग करना होगा: http://collective-docs.readthedocs.org/en/latest/components/genericsetup.html?highlight=import%20step#custom-installer-code-setuphandlers-py – toutpt

+1

@toutpt : अच्छा बिंदु, मेरा जवाब समायोजित किया। –

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