X-Git-Url: http://git.veekun.com/zzz-pokedex.git/blobdiff_plain/5dd133da718edcb26b814e643285e62a79fcf682..5f78886f15b2d250e6f842c8b3842ed1499e28b8:/pokedex/db/tables.py diff --git a/pokedex/db/tables.py b/pokedex/db/tables.py index ed98d47..01cc6a0 100644 --- a/pokedex/db/tables.py +++ b/pokedex/db/tables.py @@ -151,6 +151,7 @@ class Item(TableBase): class Language(TableBase): __tablename__ = 'languages' id = Column(Integer, primary_key=True, nullable=False) + iso3166 = Column(Unicode(2), nullable=False) name = Column(Unicode(16), nullable=False) class Location(TableBase): @@ -179,6 +180,18 @@ class Machine(TableBase): version_group_id = Column(Integer, ForeignKey('version_groups.id'), primary_key=True, nullable=False, autoincrement=False) move_id = Column(Integer, ForeignKey('moves.id'), nullable=False) +class MoveEffectCategory(TableBase): + __tablename__ = 'move_effect_categories' + id = Column(Integer, primary_key=True, nullable=False) + name = Column(Unicode(64), nullable=False) + can_affect_user = Column(Boolean, nullable=False) + +class MoveEffectCategoryMap(TableBase): + __tablename__ = 'move_effect_category_map' + move_effect_id = Column(Integer, ForeignKey('move_effects.id'), primary_key=True, nullable=False) + move_effect_category_id = Column(Integer, ForeignKey('move_effect_categories.id'), primary_key=True, nullable=False) + affects_user = Column(Boolean, primary_key=True, nullable=False) + class MoveDamageClass(TableBase): __tablename__ = 'move_damage_classes' id = Column(Integer, primary_key=True, nullable=False) @@ -474,6 +487,10 @@ Move.effect = rst.MoveEffectProperty('effect') Move.priority = association_proxy('move_effect', 'priority') Move.short_effect = rst.MoveEffectProperty('short_effect') +MoveEffect.category_map = relation(MoveEffectCategoryMap) +MoveEffect.categories = association_proxy('category_map', 'category') +MoveEffectCategoryMap.category = relation(MoveEffectCategory) + MoveFlag.flag = relation(MoveFlagType) MoveFlavorText.generation = relation(Generation)