diff options
Diffstat (limited to 'cli/app/sql')
| -rw-r--r-- | cli/app/sql/models/page.py | 2 | ||||
| -rw-r--r-- | cli/app/sql/models/tile.py | 2 | ||||
| -rw-r--r-- | cli/app/sql/versions/202006041801_add_sort_order_to_tiles.py | 29 |
3 files changed, 32 insertions, 1 deletions
diff --git a/cli/app/sql/models/page.py b/cli/app/sql/models/page.py index 2e6bbad..960ffd7 100644 --- a/cli/app/sql/models/page.py +++ b/cli/app/sql/models/page.py @@ -22,7 +22,7 @@ class Page(Base): created_at = Column(UtcDateTime(), default=utcnow()) updated_at = Column(UtcDateTime(), onupdate=utcnow()) - tiles = relationship("Tile", foreign_keys="Tile.page_id", lazy='dynamic') + tiles = relationship("Tile", foreign_keys="Tile.page_id", lazy='dynamic', order_by="asc(Tile.sort_order)") def toJSON(self): return { diff --git a/cli/app/sql/models/tile.py b/cli/app/sql/models/tile.py index 7dfa80b..3f6ce31 100644 --- a/cli/app/sql/models/tile.py +++ b/cli/app/sql/models/tile.py @@ -20,6 +20,7 @@ class Tile(Base): page_id = Column(Integer, ForeignKey('page.id'), nullable=True) target_page_id = Column(Integer, ForeignKey('page.id'), nullable=True) type = Column(String(16, convert_unicode=True), nullable=False) + sort_order = Column(Integer, default=0) settings = Column(JSON, default={}, nullable=True) created_at = Column(UtcDateTime(), default=utcnow()) updated_at = Column(UtcDateTime(), onupdate=utcnow()) @@ -31,6 +32,7 @@ class Tile(Base): 'page_id': self.page_id, 'target_page_id': self.target_page_id, 'type': self.type, + 'sort_order': self.sort_order, 'settings': self.settings, 'created_at': self.created_at, 'updated_at': self.updated_at, diff --git a/cli/app/sql/versions/202006041801_add_sort_order_to_tiles.py b/cli/app/sql/versions/202006041801_add_sort_order_to_tiles.py new file mode 100644 index 0000000..2c670a8 --- /dev/null +++ b/cli/app/sql/versions/202006041801_add_sort_order_to_tiles.py @@ -0,0 +1,29 @@ +"""add sort order to tiles + +Revision ID: 91a729020584 +Revises: 453787357254 +Create Date: 2020-06-04 18:01:33.482300 + +""" +from alembic import op +import sqlalchemy as sa +import sqlalchemy_utc + + +# revision identifiers, used by Alembic. +revision = '91a729020584' +down_revision = '453787357254' +branch_labels = None +depends_on = None + + +def upgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.add_column('tile', sa.Column('sort_order', sa.Integer(), nullable=True)) + # ### end Alembic commands ### + + +def downgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.drop_column('tile', 'sort_order') + # ### end Alembic commands ### |
