2016-12-19 12 views
0

Я использую Enaml gui на основе Atom, и я хотел бы сохранить/загрузить объекты атома на диск с диска.Как сериализовать объекты Atom api без потери «соединений»

Я попытался использовать рассол, но я потерял соединения с 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() 

Как я могу сериализовать объекты Atom без потери соединений gui?

Редактировать: Я выяснил, что если я делаю self.name = str (pickle (f)), я могу получить строку без потери соединений. Как я могу распространить эту идею на нечто более обобщаемое, например на словарь с произвольными объектами Atom?

ответ