def __init__(self,config_path=None,data_path=None, is_dev=None,project=None): if is_dev is None: self.is_dev=orange.is_dev() else: self.is_dev=is_dev if project is None: self.project=os.path.splitext( os.path.basename(sys.argv[0]))[0] else: self.project=project self.os_name=os.name if self.os_name=='posix': config_ext='.conf' self.config_path=os.path.expanduser( "~/.%s"%(self.project)) else: config_ext='.ini' self.config_path=os.path.join(os.getenv("APPDATA"), self.project) if self.is_dev: self.config_path=os.path.abspath("appdata") else: if config_path: self.config_path=config_path if not hasattr(self,"data_path"): self.data_path=self.config_path self.config_file=os.path.join(self.data_path, self.project+config_ext) self.modified=False self.load_config()
def mongo_init(is_flask=False,is_dev=None,db=None): if is_dev is None: is_dev=orange.is_dev() _config=Config(project='mongo',is_dev=is_dev) _config.load_config() config=_config.get('database') or {} config.setdefault('host','mongodb://localhost/mongo') config.setdefault('tz_aware',True) config.setdefault('connect',False) Model._config=config if _config.is_dev : config['host']='mongodb://localhost/test' if is_flask: import flask Model.flask_abort=staticmethod(flask.abort) Model.is_flask=is_flask mongoengine.connect('',**config)