Hi All,<br><br>I have until now learnt how to play around with BTreeFolder2.I have one remaining doubt left.<span>How do I edit an item that is stored inside a BtreeFolder2? I added my own OOBTree objects inside and I would like to manipulate the data inside the OOBTree. The only way I see is fetch the obj, delete it and store the new one again. Any other way?<br>
<br>This is what I did:<br><br>...<br> if self.userFolder in self.aq_parent.objectIds():<br> pass<br> else:<br><br> self.manage_addProduct['BTreeFolder2'].manage_addBTreeFolder(self.userFolder,'btf2 folder ')<br>
<br> try: <br><br> btf = self.userFolder<br> uniq_id = getattr(self.aq_parent, btf).generateId() <br> <br> obT = OOBStuff(uniq_id,{'a':1,'b':2}) #This is the object I would like to edit later.<br>
getattr(self.aq_parent,btf)._setObject(uniq_id, obT)<br> <br> obtuff = getattr(self.aq_parent, btf)._getOb('item399638579')<br> testy = obtuff.return_Tree()<br>
<br> ... <br> <br> finally:<br> pass<br><br><br>class OOBStuff(BTreeFolder2):<br> meta_type ='OOBStuff'<br> def __init__(self, oid,dict_to_add):<br>
super(OOBStuff, self).__init__(oid)<br> self.item = OOBTree()<br> self.item['Auth'] = dict_to_add<br> def return_Tree(self):<br> return self.item <br><br><br>Here,I would like to edit(add more key:value pairs) to the OOBStuff object that I had stored in the BTF2. <br>
<br>Regards,<br>Abhi<br></span>