मैं package पर काम कर रहा हूं जिसमें plone.app.registry का उपयोग करके बनाए गए नियंत्रण कक्ष शामिल हैं। मैंने Timo's tutorial का पालन किया, लेकिन, जब इसे अतिरिक्त रिकॉर्ड जोड़ने की कोशिश की जा रही है, तो मुझे कुख्यात कुंजी त्रुटि का सामना करना पड़ रहा है: एक फ़ील्ड जिसके लिए कोई रिकॉर्ड नहीं है।प्लोन नियंत्रण पैनलों के लिए सर्वोत्तम अभ्यास
तो मैं सर्वोत्तम प्रथाओं के बारे में सवालों की एक जोड़ी:
मेरा पहला सवाल यह है: एक पैकेज यह स्थापना रद्द करें समय में रजिस्ट्री है निकालना होगा?
मैं अपने पैकेज के registry.xml में यह प्रयोग किया है:
<registry>
<records interface="collective.nitf.controlpanel.INITFSettings" />
</registry>
और इस metadata.xml पर:
<metadata>
<version>1</version>
<dependencies>
<dependency>profile-plone.app.registry:default</dependency>
</dependencies>
</metadata>
लेकिन पर एक हटाने = "true" जोड़ने की स्थापना रद्द करें प्रोफ़ाइल नहीं लगता है काम करने के लिए। मैंने बिना किसी भाग्य के नाम से सभी रिकॉर्ड्स सूचीबद्ध करके भी कोशिश की, जब तक कि मैं ज़ेडमी पर मैन्युअल रूप से चरण नहीं चलाता।
तो, मेरा दूसरा सवाल यह है: मैं अनइंस्टॉल समय पर नियंत्रण कक्ष रिकॉर्ड कैसे हटा सकता हूं?
def setUp(self):
self.portal = self.layer['portal']
setRoles(self.portal, TEST_USER_ID, ['Manager'])
# Set up the NITF settings registry
self.registry = Registry()
self.registry.registerInterface(INITFSettings)
def test_record_sections(self):
# Test that the sections record is in the control panel
record_sections = self.registry.records[
'collective.nitf.controlpanel.INITFSettings.sections']
self.failUnless('sections' in INITFSettings)
self.assertEquals(record_sections.value, set([]))
एक तीसरा प्रश्न हो सकता है कि कैसे अगर एक रिकार्ड unisntall समय में हटा दिया गया था परीक्षण करने के लिए:
अगर एक रिकार्ड रजिस्ट्री पर है मैं इस तरह से कुछ करने का परीक्षण करने के।
कोई अन्य सिफारिश?
[रिकॉर्ड डिलीट] (http: // pypi plone.app.registry पर .python.org/pypi/plone.app.registry # हटाना-रिकॉर्ड) थोड़ा अलग है और मेरे लिए काम नहीं कर रहा है; आपको ऐसा कुछ करना है: <रिकॉर्ड नाम = " my.package.myRecord "delete =" true "/> मैं [इंटरफ़ेस पर आधारित सृजन] में एक उपसर्ग विशेषता जोड़ने का प्रयास कर रहा था (http://pypi.python.org/pypi/plone.app.registry# बनाना-रिकॉर्ड-आधारित-ऑन-इंटरफ़ेस), लेकिन यह प्रलेखन में स्पष्ट नहीं है। – hvelarde