Add DAL and PB draws table to schema
This commit is contained in:
1 parent
06ee8f37d7
commit
cc65399546
1 file changed
+47
-1
+47
-1
@@ -3,8 +3,54 @@
|
|||||||
|
|
||||||
The base definitions for database access and definition
|
The base definitions for database access and definition
|
||||||
"""
|
"""
|
||||||
from sqlalchemy.orm import DeclarativeBase
|
import os
|
||||||
|
|
||||||
|
from dotenv import load_dotenv
|
||||||
|
|
||||||
|
from sqlalchemy import create_engine, DateTime, Column, Integer, String
|
||||||
|
from sqlalchemy.orm import DeclarativeBase, sessionmaker
|
||||||
|
|
||||||
|
|
||||||
|
load_dotenv()
|
||||||
|
|
||||||
class Base(DeclarativeBase):
|
class Base(DeclarativeBase):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
class DataAccessLayer:
|
||||||
|
|
||||||
|
def __init__(self):
|
||||||
|
self.engine = None
|
||||||
|
self.conn_string = os.getenv("DATABASE_URL")
|
||||||
|
|
||||||
|
|
||||||
|
def connect(self):
|
||||||
|
self.engine = create_engine(self.conn_string)
|
||||||
|
Base.metadata.create_all(self.engine)
|
||||||
|
self.Session = sessionmaker(bind=self.engine)
|
||||||
|
|
||||||
|
|
||||||
|
dal = DataAccessLayer()
|
||||||
|
|
||||||
|
|
||||||
|
class PowerballDraw(Base):
|
||||||
|
__tablename__ = 'powerball_draws'
|
||||||
|
|
||||||
|
draw_date: DateTime = Column(DateTime, primary_key=True)
|
||||||
|
white_ball1: int = Column(Integer)
|
||||||
|
white_ball2: int = Column(Integer)
|
||||||
|
white_ball3: int = Column(Integer)
|
||||||
|
white_ball4: int = Column(Integer)
|
||||||
|
white_ball5: int = Column(Integer)
|
||||||
|
powerball: int = Column(Integer)
|
||||||
|
power_play: int = Column(Integer)
|
||||||
|
|
||||||
|
|
||||||
|
def __repr__(self):
|
||||||
|
return f"PowerballDraw({self.draw_date=}, {self.white_ball1=}, {self.white_ball2=}, {self.white_ball3=}, " \
|
||||||
|
f"{self.white_ball4=}, {self.white_ball5=}, {self.powerball=}, {self.power_play=})"
|
||||||
|
|
||||||
|
def __str__(self):
|
||||||
|
return f"{self.draw_date}, [{self.white_ball1} {self.white_ball2} {self.white_ball3} {self.white_ball4} " \
|
||||||
|
f"{self.white_ball5}], {self.powerball}, {self.power_play if self.power_play else 1}x"
|
||||||
|
|
||||||
Reference in new issue
Block a user