From e38bc9bd76d67221b1f39aee40c2b00a16cbb7f0 Mon Sep 17 00:00:00 2001 From: Paul Bienkowski Date: Mon, 25 Jul 2022 17:46:58 +0200 Subject: [PATCH] fix region DB schema --- .../a049e5eb24dd_create_table_region.py | 7 +++---- api/obs/api/db.py | 20 +++++++++++++++++-- 2 files changed, 21 insertions(+), 6 deletions(-) diff --git a/api/migrations/versions/a049e5eb24dd_create_table_region.py b/api/migrations/versions/a049e5eb24dd_create_table_region.py index e5dcf7f..7e50667 100644 --- a/api/migrations/versions/a049e5eb24dd_create_table_region.py +++ b/api/migrations/versions/a049e5eb24dd_create_table_region.py @@ -22,13 +22,12 @@ def upgrade(): op.create_table( "region", sa.Column( - "way_id", sa.BIGINT, autoincrement=True, primary_key=True, index=True + "relation_id", sa.BIGINT, autoincrement=True, primary_key=True, index=True ), - sa.Column("zone", dbtype("zone_type")), sa.Column("name", sa.String), sa.Column("geometry", dbtype("GEOMETRY"), index=True), - sa.Column("directionality", sa.Integer), - sa.Column("oenway", sa.Boolean), + sa.Column("admin_level", sa.Integer, index=True), + sa.Column("tags", dbtype("HSTORE")), ) diff --git a/api/obs/api/db.py b/api/obs/api/db.py index 8830574..a78b2b4 100644 --- a/api/obs/api/db.py +++ b/api/obs/api/db.py @@ -401,9 +401,22 @@ class Comment(Base): } +class Region(Base): + __tablename__ = "region" + + relation_id = Column(BIGINT, primary_key=True, index=True) + name = Column(String) + geometry = Column(Geometry) + admin_level = Column(Integer) + tags = Column(HSTORE) + + Comment.author = relationship("User", back_populates="authored_comments") User.authored_comments = relationship( - "Comment", order_by=Comment.created_at, back_populates="author", passive_deletes=True + "Comment", + order_by=Comment.created_at, + back_populates="author", + passive_deletes=True, ) Track.author = relationship("User", back_populates="authored_tracks") @@ -418,7 +431,10 @@ Track.comments = relationship( OvertakingEvent.track = relationship("Track", back_populates="overtaking_events") Track.overtaking_events = relationship( - "OvertakingEvent", order_by=OvertakingEvent.time, back_populates="track", passive_deletes=True + "OvertakingEvent", + order_by=OvertakingEvent.time, + back_populates="track", + passive_deletes=True, )