Added canonical_pokedex, Pokedex.region, and some Pokédex descriptions.
authorEevee <git@veekun.com>
Tue, 30 Mar 2010 03:22:57 +0000 (20:22 -0700)
committerEevee <git@veekun.com>
Sat, 17 Apr 2010 06:09:32 +0000 (23:09 -0700)
pokedex/data/csv/generations.csv
pokedex/data/csv/pokedexes.csv
pokedex/db/tables.py

index 4d0fb26..dde2fac 100644 (file)
@@ -1,5 +1,5 @@
-id,main_region_id,name
-1,1,Generation I
-2,2,Generation II
-3,3,Generation III
-4,4,Generation IV
+id,main_region_id,canonical_pokedex_id,name
+1,1,2,Generation I
+2,2,7,Generation II
+3,3,4,Generation III
+4,4,6,Generation IV
index b3db8e5..6fb4890 100644 (file)
@@ -1,9 +1,9 @@
-id,name,description
-1,National,
-2,Kanto,
-3,Johto,"Gold/Silver/Crystal Johto dex: called the ""New"" Pokédex in-game"
-4,Hoenn,
-5,Sinnoh,Diamond/Pearl Sinnoh dex
-6,Sinnoh,Platinum Sinnoh dex: an extended version of Diamond and Pearl's
-7,Johto,"HeartGold/SoulSilver Johto dex: a slightly extended version of Gold, Silver, and Crystal's, adding five Generation IV evolutions of Generation I and Generation II Pokémon"
-8,Internal ID,IDs used internally in Generation I
+id,region_id,name,description
+1,,National,Entire National dex
+2,1,Kanto,Red/Blue/Yellow Kanto dex
+3,2,Johto,"Gold/Silver/Crystal Johto dex—called the ""New"" Pokédex in-game"
+4,3,Hoenn,Ruby/Sapphire/Emerald Hoenn dex
+5,4,Sinnoh,Diamond/Pearl Sinnoh dex
+6,4,Sinnoh,Platinum Sinnoh dex—an extended version of Diamond and Pearl's
+7,2,Johto,"HeartGold/SoulSilver Johto dex—Gold/Silver/Crystal's, extended to add Generation IV evolutions"
+8,1,Internal ID,IDs used internally in Generation I
index b2e04c9..508556f 100644 (file)
@@ -145,6 +145,7 @@ class Generation(TableBase):
     __tablename__ = 'generations'
     id = Column(Integer, primary_key=True, nullable=False)
     main_region_id = Column(Integer, ForeignKey('regions.id'))
+    canonical_pokedex_id = Column(Integer, ForeignKey('pokedexes.id'))
     name = Column(Unicode(16), nullable=False)
 
 class GrowthRate(TableBase):
@@ -275,6 +276,7 @@ class Nature(TableBase):
 class Pokedex(TableBase):
     __tablename__ = 'pokedexes'
     id = Column(Integer, primary_key=True, nullable=False)
+    region_id = Column(Integer, ForeignKey('regions.id'), nullable=True)
     name = Column(Unicode(16), nullable=False)
     description = Column(Unicode(512))
 
@@ -523,6 +525,7 @@ EncounterSlotCondition.condition = relation(EncounterCondition,
 
 EvolutionChain.growth_rate = relation(GrowthRate, backref='evolution_chains')
 
+Generation.canonical_pokedex = relation(Pokedex, backref='canonical_for_generation')
 Generation.versions = relation(Version, secondary=VersionGroup.__table__)
 Generation.main_region = relation(Region)
 
@@ -568,7 +571,8 @@ Nature.decreased_stat = relation(Stat, primaryjoin=Nature.decreased_stat_id==Sta
 Nature.increased_stat = relation(Stat, primaryjoin=Nature.increased_stat_id==Stat.id,
                                        backref='increasing_natures')
 
-Pokedex.version_groups = relation(VersionGroup, secondary=PokedexVersionGroup.__table__)
+Pokedex.region = relation(Region, backref='pokedexes')
+Pokedex.version_groups = relation(VersionGroup, secondary=PokedexVersionGroup.__table__, backref='pokedexes')
 
 Pokemon.abilities = relation(Ability, secondary=PokemonAbility.__table__,
                                       order_by=PokemonAbility.slot,