BaseballBot/src/main/database_module/database_classes/db_classes.py

29 lines
985 B
Python

from sqlalchemy import Column, String, Integer, ForeignKey, Date
from sqlalchemy.dialects.postgresql import UUID
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import relationship
Base = declarative_base()
class Play(Base):
__tablename__ = 'play'
play_id = Column(String, nullable=False, primary_key=True)
pitch_value = Column(Integer, nullable=True)
creation_date = Column(Date, nullable=False)
server_id = Column(String, nullable=False)
guesses = relationship(lambda : Guess)
class Guess(Base):
__FAKE_VALUE__ = -5000
__tablename__ = 'guess'
member_id = Column(String, nullable=False, primary_key=True)
play_id = Column(UUID, ForeignKey(Play.play_id), nullable=False, primary_key=True)
guessed_number = Column(Integer, nullable=False)
member_name = Column(String, nullable=False)
difference = Column(Integer)
play = relationship("Play", back_populates="guesses")