Даже не уверен, что уровень модуля здесь правильный, но ...
У меня есть проект Pylons, и в компоненте модели у меня есть глобальная переменная doc в __init__.py
, которую я хочу использовать из разных объектов Query. (Документ - это дескриптор документа в XML-файле, который я использую в качестве поддельной БД.) Мой вопрос: когда заканчивается область действия __init__.py
? В настоящее время я не освобождаю документ с помощью doc.unlink (), и я не уверен, куда его поместить.
В альтернативном проекте, о котором я думал, речь идет о том, чтобы заставить потребляющий объект (Query) иметь переменную уровня класса этого документа (то есть сделать его одноэлементным). Но похоже, что жизнь моего объекта Query такова, что документ всегда перераспределяется с новым дескриптором Document.
class Query(object):
doc = None
def __init__(self, content=None):
self.content = content
if self.doc == None:
self.doc = parse(os.path.join(config['app_conf']['xmldb'], "sample_search_result.xml"))
Я могу сказать, потому что адрес элементов в Документе постоянно меняется.
Кто-нибудь хочет помочь новичку?