X-Git-Url: http://git.veekun.com/zzz-pokedex.git/blobdiff_plain/e2e45180d48996e7ca45214b397845d843bb7889..f88ce9f3fb31754d1a29a3a7ff06d7d5ee4ca71a:/pokedex/db/tables.py?ds=sidebyside diff --git a/pokedex/db/tables.py b/pokedex/db/tables.py index 1de7e7b..0ed200c 100644 --- a/pokedex/db/tables.py +++ b/pokedex/db/tables.py @@ -156,6 +156,12 @@ class LocationArea(TableBase): internal_id = Column(Integer, nullable=False) name = Column(Unicode(64), nullable=True) +class Machine(TableBase): + __tablename__ = 'machines' + machine_number = Column(Integer, primary_key=True, nullable=False, autoincrement=False) + generation_id = Column(Integer, ForeignKey('generations.id'), primary_key=True, nullable=False, autoincrement=False) + move_id = Column(Integer, ForeignKey('moves.id'), nullable=False) + class MoveEffect(TableBase): __tablename__ = 'move_effects' id = Column(Integer, primary_key=True, nullable=False) @@ -173,6 +179,7 @@ class Move(TableBase): __tablename__ = 'moves' id = Column(Integer, primary_key=True, nullable=False) name = Column(Unicode(12), nullable=False) + generation_id = Column(Integer, ForeignKey('generations.id'), nullable=False) type_id = Column(Integer, ForeignKey('types.id'), nullable=False) power = Column(SmallInteger) pp = Column(SmallInteger, nullable=False) @@ -376,7 +383,13 @@ EvolutionChain.growth_rate = relation(GrowthRate, backref='evolution_chains') LocationArea.location = relation(Location, backref='areas') +Machine.generation = relation(Generation) + Move.type = relation(Type, backref='moves') +Move.generation = relation(Generation, backref='moves') +Move.target = relation(MoveTarget, backref='moves') +Move.effect = relation(MoveEffect, backref='moves') +Move.machines = relation(Machine, backref='move') Pokemon.abilities = relation(Ability, secondary=PokemonAbility.__table__, order_by=PokemonAbility.slot, @@ -433,3 +446,5 @@ Type.target_efficacies = relation(TypeEfficacy, Version.generation = relation(Generation, secondary=VersionGroup.__table__, backref='versions') Version.version_group = relation(VersionGroup, backref='versions') + +VersionGroup.generation = relation(Generation, backref='version_groups')