def write_back(layer=None, ajax=True): user = current_user connection = psycopg2.connect( database=current_app.config.get('TEMP_PG_DB'), host=current_app.config.get('TEMP_PG_HOST'), user=current_app.config.get('TEMP_PG_USER'), password=current_app.config.get('TEMP_PG_PASSWORD'), sslmode='allow', ) couch = CouchDBBox(current_app.config.get('COUCH_DB_URL'), '%s_%s' % (SystemConfig.AREA_BOX_NAME, user.id)) schema = couch.layer_schema(layer) extend_schema_for_couchdb(schema) tablename = 'tmp%s%s' % (user.id, layer) tmp_db = TempPGDB(connection=connection, tablename=tablename, schema=schema) couch.store_features(layer, tmp_db.load_features(), delete_missing=tmp_db.imported_feature_ids()) connection.close() # write changes back to PostGIS to prevent multiple inserts create_wfs(user, [layer]) signals.features_updated.send(user) if ajax: return Response(response='success', status=200, headers=None, mimetype='application/json', content_type=None)
def write_back(layer=None, ajax=True): user = current_user connection = psycopg2.connect( database=current_app.config.get('TEMP_PG_DB'), host=current_app.config.get('TEMP_PG_HOST'), user=current_app.config.get('TEMP_PG_USER'), password=current_app.config.get('TEMP_PG_PASSWORD'), sslmode='allow', ) couch = CouchDBBox(current_app.config.get('COUCH_DB_URL'), '%s_%s' % (SystemConfig.AREA_BOX_NAME, user.id)) schema = couch.layer_schema(layer) extend_schema_for_couchdb(schema) tablename = 'tmp%s%s' % (user.id, layer) tmp_db = TempPGDB(connection=connection, tablename=tablename, schema=schema) couch.store_features(layer, tmp_db.load_features(), delete_missing=tmp_db.imported_feature_ids()) connection.close() signals.features_updated.send(user, layer=layer) if ajax: return Response(response='success', status=200, headers=None, mimetype='application/json', content_type=None)