mirror of
https://github.com/veekun/pokedex.git
synced 2024-08-20 18:16:34 +00:00
Fixed some weirdness using version_group as a one-to-many.
This commit is contained in:
parent
0300e01cff
commit
0946db6b8b
1 changed files with 5 additions and 2 deletions
|
@ -2,6 +2,7 @@
|
||||||
|
|
||||||
from sqlalchemy import Column, ForeignKey, MetaData, Table
|
from sqlalchemy import Column, ForeignKey, MetaData, Table
|
||||||
from sqlalchemy.ext.declarative import declarative_base
|
from sqlalchemy.ext.declarative import declarative_base
|
||||||
|
from sqlalchemy.ext.associationproxy import association_proxy
|
||||||
from sqlalchemy.orm import backref, relation
|
from sqlalchemy.orm import backref, relation
|
||||||
from sqlalchemy.types import *
|
from sqlalchemy.types import *
|
||||||
from sqlalchemy.databases.mysql import *
|
from sqlalchemy.databases.mysql import *
|
||||||
|
@ -366,6 +367,8 @@ class Version(TableBase):
|
||||||
version_group_id = Column(Integer, ForeignKey('version_groups.id'), nullable=False)
|
version_group_id = Column(Integer, ForeignKey('version_groups.id'), nullable=False)
|
||||||
name = Column(Unicode(32), nullable=False)
|
name = Column(Unicode(32), nullable=False)
|
||||||
|
|
||||||
|
generation = association_proxy('version_group', 'generation')
|
||||||
|
|
||||||
|
|
||||||
### Relations down here, to avoid ordering problems
|
### Relations down here, to avoid ordering problems
|
||||||
Encounter.pokemon = relation(Pokemon, backref='encounters')
|
Encounter.pokemon = relation(Pokemon, backref='encounters')
|
||||||
|
@ -381,6 +384,8 @@ EncounterTypeSlot.type = relation(EncounterType, backref='slots')
|
||||||
|
|
||||||
EvolutionChain.growth_rate = relation(GrowthRate, backref='evolution_chains')
|
EvolutionChain.growth_rate = relation(GrowthRate, backref='evolution_chains')
|
||||||
|
|
||||||
|
Generation.versions = relation(Version, secondary=VersionGroup.__table__)
|
||||||
|
|
||||||
LocationArea.location = relation(Location, backref='areas')
|
LocationArea.location = relation(Location, backref='areas')
|
||||||
|
|
||||||
Machine.generation = relation(Generation)
|
Machine.generation = relation(Generation)
|
||||||
|
@ -443,8 +448,6 @@ Type.target_efficacies = relation(TypeEfficacy,
|
||||||
==TypeEfficacy.target_type_id,
|
==TypeEfficacy.target_type_id,
|
||||||
backref='target_type')
|
backref='target_type')
|
||||||
|
|
||||||
Version.generation = relation(Generation, secondary=VersionGroup.__table__,
|
|
||||||
backref='versions')
|
|
||||||
Version.version_group = relation(VersionGroup, backref='versions')
|
Version.version_group = relation(VersionGroup, backref='versions')
|
||||||
|
|
||||||
VersionGroup.generation = relation(Generation, backref='version_groups')
|
VersionGroup.generation = relation(Generation, backref='version_groups')
|
||||||
|
|
Loading…
Reference in a new issue