def pg_tables(schema="public"): """ Returns all the tables in the given schema minus the default PostGIS tables. Views are also excluded. See separate function for retrieving views. """ t = text("SELECT table_name FROM information_schema.tables WHERE table_schema = :tschema and table_type = :tbtype " \ "ORDER BY table_name ASC") result = _execute(t, tschema=schema, tbtype="BASE TABLE") pgTables = [] for r in result: tableName = r["table_name"] #Remove default PostGIS tables tableIndex = getIndex(_postGISTables, tableName) if tableIndex == -1: #Validate if table is a lookup table and if it is, then omit rx = QRegExp("check_*") rx.setPatternSyntax(QRegExp.Wildcard) if not rx.exactMatch(tableName): pgTables.append(tableName) return pgTables
def pg_tables(schema="public", exclude_lookups=False): """ Returns all the tables in the given schema minus the default PostGIS tables. Views are also excluded. See separate function for retrieving views. """ t = text("SELECT table_name FROM information_schema.tables WHERE table_schema = :tschema and table_type = :tbtype " \ "ORDER BY table_name ASC") result = _execute(t,tschema = schema,tbtype = "BASE TABLE") pgTables = [] for r in result: tableName = r["table_name"] #Remove default PostGIS tables tableIndex = getIndex(_postGISTables, tableName) if tableIndex == -1: if exclude_lookups: #Validate if table is a lookup table and if it is, then omit rx = QRegExp("check_*") rx.setPatternSyntax(QRegExp.Wildcard) if not rx.exactMatch(tableName): pgTables.append(tableName) else: pgTables.append(tableName) return pgTables
def __init__(self, composer_wrapper, parent=None): QWidget.__init__(self, parent) self.setupUi(self) self._composer_wrapper = composer_wrapper self._notif_bar = NotificationBar(self.vl_notification) #Load fields if the data source has been specified ds_name = self._composer_wrapper.selectedDataSource() self.ref_table.load_data_source_fields(ds_name) #Load referenced table list and filter so to only load photo tables rx = QRegExp("*_photo") rx.setPatternSyntax(QRegExp.Wildcard) self.ref_table.load_link_tables(rx) #Connect signals self._composer_wrapper.dataSourceSelected.connect(self.ref_table.on_data_source_changed)