En kanske inte så nybörjaraktiv fråga, men ändå:
Om jag har skapat en databaskoppling:
Kod:
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from sqlalchemy.ext.declarative import declarative_base
def set_engine(type_, user, psw, adress, db_name):
if type_ == 'postgresql':
return create_engine(f'postgresql+psycopg2://{user}:{psw}@{adress}/{db_name}',echo=False)
elif type_ == 'sqlite':
return create_engine(f'sqlite:///{db_name}.sqlite', echo=False)
else:
return None
Kod:
def connect():
engine = set_engine('postgresql', cred.user, cred.password, cred.adress, cred.database)
Base.configure(bind=engine)
Session.configure(bind=enginge)
Base = declarative_base()
Session= sessionmaker()
#Base = declarative_base(bind=engine)
#Session= sessionmaker(bind=engine)
session=Session()
connect()
Hur kan jag sedan ändra kopplingen. Eller rättare sagt, hur kan jag se till att mitt program har en Base som inte är kopplad förrän jag har valt en Db att koppla till? Hur kan jag sedan ändra denna koppling till en annan Db i programmet?
Jag vill kunna hantera vilken Db jag vill koppla till, i "Preference" i mitt program. Jag vill också kunna manuellt koppla en databas till mitt program.
Just nu får jag fel att Base inte har en "Base.Configure()"