I am working on python plugins for QGIS. I have my QueryBuilder.py and postgis.py files.
I connected it to database using Connection class and under def __init__(self, uri=None) in postgis.py file.
I want to connect to database through QueryBuilder.py file.I imported postgis.py into QueryBuilder.py But how to call def __init__(self, uri=None) of postgis.py from QueryBuilder.py? I need to create instance of 'Connection' class in order to call
def __init__(self, uri=None) method of postgis.py in QueryBuilder.py How do I go about it?
postgis.py file:
class Connection(DbConn.Connection):
@classmethod
def getTypeName(self):
return 'postgis'
@classmethod
def getTypeNameString(self):
return 'PostgreSQL'
@classmethod
def getProviderName(self):
return 'postgres'
@classmethod
def getSettingsKey(self):
return 'PostgreSQL'
@classmethod
def icon(self):
return QIcon(":/icons/postgis_elephant.png")
@classmethod
def __init__(self, uri=None):
DbConn.Connection.__init__(self, uri)
#self.host = uri.host()
#self.port = uri.port()
#self.dbname = uri.database()
#self.user = uri.username()
#self.passwd = uri.password()
self.host ='localhost'
self.port =5432
self.dbname ='ssss'
self.user = 'j'
self.passwd = 'jkj'
if self.dbname == '' or self.dbname is None:
self.dbname = self.user
try:
self.con = psycopg2.connect(self.con_info())
except psycopg2.OperationalError, e:
raise DbError(e)
self.has_spatial = self.check_spatial()
self.check_geometry_columns_table()
# a counter to ensure that the cursor will be unique
self.last_cursor_id = 0
'''
'''
if __name__ == "__main__":
window = Connection()
and QueryBuilder.py is:
import sys
import pdb
from PyQt4 import QtGui, QtCore
import psycopg2
import pprint
#from qgis.core import *
#from qgis.gui import *
import postgis
from DatabaseModel import TableItem, SchemaItem, DatabaseModel
import DbConnection
from ui.DlgQueryBuilder_ui import Ui_Dialog
from DlgDbError import DlgDbError
from QueryParser import QueryParser
from QueryManager import *
class DlgQueryBuilder(QDialog, Ui_Dialog):
so on.....