def get(self): action = self.get_argument('action', False) if action == 'list': html = "<select name=\"database\">" dbs = dm.list_databases() for db in dbs: html = "%s <option value=\"%s\" %s>%s</option>"%(html, db.get('name'), db.get('name')==options.pg_dbname and "selected=\"selected\"" or "" ,db.get('name')) html = "%s</select>"%html elif action == 'initialize': create_tables() html = '' elif action == 'list_tables': tables = cm.get_tables_list() html = self.render_string("table_list.html", tables=tables) elif action == 'config_models': tables = cm.get_tables_list(True) tables_config = cm.get_models_config() methods = cm.get_all_methods_config() html = self.render_string("frm_config_models.html", tables=tables, tables_config=tables_config, methods=methods) elif action == 'generate_files': generate_all() message = {'id': 'success', 'message': 'Archivos generados satisfactoriamente'} html = self.render_string("message.html", message=message) #elif action == 'list_tables_config': self.write(html)
def post(self): if self.get_argument('action') == 'update_config': cm.set({'host': str(self.get_argument('host', 'localhost')), 'password' : str(self.get_argument('password', '')), 'database' : str(self.get_argument('database', '')), 'user' : str(self.get_argument('user', '')), 'port' : int(self.get_argument('port', 5432))}) options.pg_dbname = cm.get('database', 'database') options.pg_user = cm.get('database', 'user') options.pg_port = cm.get('database', 'port') options.pg_pass = cm.get('database', 'password') options.pg_host = cm.get('database', 'host') create_tables() message = {'id': 'success', 'message': 'Actualizada configuracion correctamente'} elif self.get_argument('action') == 'update_table_list': message = {'id': 'success', 'message': 'Lista obtenida correctamente'} tables= self.get_arguments('tables') cm.update_tables(tables) elif self.get_argument('action') == 'reset': message = {'id': 'success', 'message': 'Proyecto inicializado coerrectamente'} create_tables() cm.set({'host': str(options.pg_host), 'password' : str(options.pg_pass), 'database' : str(options.pg_dbname), 'user' : str(options.pg_user), 'port' : int(options.pg_port)}) elif self.get_argument('action') == 'update_model': message = {'id': 'success', 'message': 'Modelos actualizados'} for p in self.request.arguments.keys(): if p.startswith('get_'): cm.update_config_method('GET', int(p[4:]), [int(v) for v in self.get_arguments(p)]) elif p.startswith('post_'): cm.update_config_method('POST', int(p[5:]), [int(v) for v in self.get_arguments(p)]) elif p.startswith('model_'): cm.update_config_model(int(p[6:]), self.get_argument(p)) elif p.startswith('method_'): cm.update_method_use(int(p[7:]), [int(v) for v in self.get_arguments(p)]) elif p.startswith('methoda_'): cm.update_method_async(int(p[8:]), [int(v) for v in self.get_arguments(p)]) self.render("message.html", message=message)