Add country, city and venue.
This commit is contained in:
parent
a0df624f16
commit
301c389ba9
4 changed files with 134 additions and 1 deletions
|
|
@ -41,6 +41,7 @@ class Conference(TimeStampedModel):
|
|||
url = Column(String)
|
||||
schedule_xml_url = Column(String)
|
||||
short_name = Column(String, unique=True)
|
||||
venue_id = Column(Integer, ForeignKey("venue.id"))
|
||||
|
||||
people_detail = relationship(
|
||||
"ConferencePerson", lazy="dynamic", back_populates="conference"
|
||||
|
|
@ -54,6 +55,46 @@ class Conference(TimeStampedModel):
|
|||
lazy="dynamic",
|
||||
)
|
||||
|
||||
venue = relationship("Venue", back_populates="conferences")
|
||||
|
||||
|
||||
class City(TimeStampedModel):
|
||||
"""City."""
|
||||
|
||||
__tablename__ = "city"
|
||||
id = Column(Integer, primary_key=True)
|
||||
slug = Column(String, nullable=False, unique=True)
|
||||
name = Column(String, nullable=False)
|
||||
country_code = Column(String, ForeignKey("country.alpha2"), nullable=False)
|
||||
wikidata_qid = Column(String, nullable=False)
|
||||
|
||||
venues = relationship("Venue", back_populates="city")
|
||||
country = relationship("Country", back_populates="cities")
|
||||
|
||||
|
||||
class Venue(TimeStampedModel):
|
||||
"""Venue."""
|
||||
|
||||
__tablename__ = "venue"
|
||||
id = Column(Integer, primary_key=True)
|
||||
name = Column(String, nullable=False)
|
||||
city_id = Column(Integer, ForeignKey("city.id"))
|
||||
wikidata_qid = Column(String, nullable=False)
|
||||
|
||||
conferences = relationship("Conference", back_populates="venue")
|
||||
city = relationship("City", back_populates="venues")
|
||||
|
||||
|
||||
class Country(TimeStampedModel):
|
||||
"""Country."""
|
||||
|
||||
__tablename__ = "country"
|
||||
alpha2 = Column(String, primary_key=True)
|
||||
name = Column(String)
|
||||
wikidata_qid = Column(String, nullable=False)
|
||||
|
||||
cities = relationship("City", back_populates="country")
|
||||
|
||||
|
||||
class ConferencePerson(Base):
|
||||
__tablename__ = "conference_person"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue