from sqlalchemy import Column, Integer, Text, ForeignKey from sqlalchemy.orm import declarative_base, relationship Base = declarative_base() class Locale(Base): __tablename__ = 'T_LOCALE' TEXT_ID = Column(Integer, primary_key=True) LANG = Column(Text) TEXT = Column(Text) def __init__(self, TEXT_ID, LANG, TEXT): self.PLACE_ID = TEXT_ID self.LANG = LANG self.TEXT = TEXT def __str__(self): return self.PLACE_ID + " " + self.LANG + " " + self.TEXT class Place(Base): __tablename__ = 'T_PLACE' PLACE_ID = Column(Integer, primary_key=True) NAME_LID = Column(Integer, ForeignKey("T_LOCALE.TEXT_ID")) LOCALE = relationship("Locale") def __init__(self, PLACE_ID, NAME_LID): self.PLACE_ID = PLACE_ID self.NAME_LID = NAME_LID def __str__(self): return self.PLACE_ID + " " + self.NAME_LID class Question(Base): __tablename__ = "T_QUESTION" QUESTION_ID = Column(Integer, primary_key=True) QUESTION_TYPE = Column(Integer) TEXT_LID = Column(Integer, ForeignKey("T_LOCALE.TEXT_ID")) LOCALE = relationship("Locale") def __init__(self, QUESTION_ID, QUESTION_TYPE, TEXT_LID): self.QUESTION_ID = QUESTION_ID self.QUESTION_TYPE = QUESTION_TYPE self.TEXT_LID = TEXT_LID def __str__(self): return self.QUESTION_ID + " " + self.QUESTION_TYPE + " " + self.TEXT_LID class Answer(Base): __tablename__ = "T_ANSWER" ANSWER_ID = Column(Integer, primary_key=True) QA_TYPE = Column(Integer) NPC_ID = Column(Integer, ForeignKey("T_NPC.NPC_ID")) TEXT_LID = Column(Integer, ForeignKey("T_LOCALE.TEXT_ID")) def __init__(self, ANSWSER_ID, QA_TYPE, NPC_ID, TEXT_LID): self.ANSWSER_ID = ANSWSER_ID self.QA_TYPE = QA_TYPE self.NPC_ID = NPC_ID self.TEXT_LID = TEXT_LID class Npc(Base): __tablename__ = "T_NPC" NPC_ID = Column(Integer, primary_key=True) NAME_LID = Column(Integer, ForeignKey("T_LOCALE.TEXT_ID")) def __init__(self, NPC_ID, NAME_LID): self.NPC_ID = NPC_ID self.NAME_LID = NAME_LID class Trait(Base): __tablename__ = "T_TRAIT" TRAIT_ID = Column(Integer, primary_key=True) NAME_LID = Column(Integer, ForeignKey("T_LOCALE.TEXT_ID")) def __init__(self, TRAIT_ID, NAME_LID): self.TRAIT_ID = TRAIT_ID self.NAME_LID = NAME_LID class Reaction(Base): __tablename__ = "T_REACTION" REACTION_ID = Column(Integer, primary_key=True) DESC_LID = Column(Integer, ForeignKey("T_LOCALE.TEXT_ID")) NPC_ID = Column(Integer, ForeignKey("T_NPC.NPC_ID")) TRAIT_ID = Column(Integer, ForeignKey("T_TRAIT.TRAIT_ID")) def __init__(self, REACTION_ID, DESC_LID, NPC_ID, TRAIT_ID): self.REACTION_ID = REACTION_ID self.DESC_LID = DESC_LID self.NPC_ID = NPC_ID self.TRAIT_ID = TRAIT_ID