我正在使用基于Atom的Enaml gui,我想将原子对象保存/加载到磁盘上。
我尝试过使用泡菜,但我失去了与gui的联系。
from atom.api import Atom, Unicode
import pickle
class test(Atom):
name = Unicode
def save(self)
f = open('tester.p','w')
pickle.dump(self.name,f)
f.close()
def load(self):
f = open('tester.p','r')
self.name = pickle(f) # gui is not updated
#self.name = 'this one works' #gui is updated
f.close()
如何在不丢失gui连接的情况下序列化Atom对象?
编辑: 我发现如果我做self.name = str(pickle(f))我可以在不丢失连接的情况下获取字符串。我怎样才能将这个想法扩展到更具概括性的东西,比如一个包含任意Atom对象的字典?