From e973412b5ea29685f4fa260d8eb44baae095fb81 Mon Sep 17 00:00:00 2001 From: Jules Laplace Date: Sat, 4 Jul 2020 16:37:19 +0200 Subject: rename timestamp to annotation --- .../cli/app/sql/__pycache__/common.cpython-37.pyc | Bin 910 -> 0 bytes .../cli/app/sql/__pycache__/env.cpython-37.pyc | Bin 1701 -> 0 bytes animism-align/cli/app/sql/common.py | 2 +- animism-align/cli/app/sql/env.py | 2 +- animism-align/cli/app/sql/models/annotation.py | 39 ++++++++++++++ animism-align/cli/app/sql/models/timestamp.py | 39 -------------- .../sql/versions/202006271347_add_paragraphs.py | 56 --------------------- .../sql/versions/202007041633_create_database.py | 56 +++++++++++++++++++++ 8 files changed, 97 insertions(+), 97 deletions(-) delete mode 100644 animism-align/cli/app/sql/__pycache__/common.cpython-37.pyc delete mode 100644 animism-align/cli/app/sql/__pycache__/env.cpython-37.pyc create mode 100644 animism-align/cli/app/sql/models/annotation.py delete mode 100644 animism-align/cli/app/sql/models/timestamp.py delete mode 100644 animism-align/cli/app/sql/versions/202006271347_add_paragraphs.py create mode 100644 animism-align/cli/app/sql/versions/202007041633_create_database.py (limited to 'animism-align/cli/app/sql') diff --git a/animism-align/cli/app/sql/__pycache__/common.cpython-37.pyc b/animism-align/cli/app/sql/__pycache__/common.cpython-37.pyc deleted file mode 100644 index f995f96..0000000 Binary files a/animism-align/cli/app/sql/__pycache__/common.cpython-37.pyc and /dev/null differ diff --git a/animism-align/cli/app/sql/__pycache__/env.cpython-37.pyc b/animism-align/cli/app/sql/__pycache__/env.cpython-37.pyc deleted file mode 100644 index 96f3d85..0000000 Binary files a/animism-align/cli/app/sql/__pycache__/env.cpython-37.pyc and /dev/null differ diff --git a/animism-align/cli/app/sql/common.py b/animism-align/cli/app/sql/common.py index d79bc06..f291daa 100644 --- a/animism-align/cli/app/sql/common.py +++ b/animism-align/cli/app/sql/common.py @@ -31,6 +31,6 @@ Base.metadata.bind = engine db = SQLAlchemy() # include the models in reverse dependency order, so relationships work -from app.sql.models.timestamp import Timestamp +from app.sql.models.annotation import Annotation from app.sql.models.paragraph import Paragraph from app.sql.models.upload import Upload diff --git a/animism-align/cli/app/sql/env.py b/animism-align/cli/app/sql/env.py index af21e0e..0defa88 100644 --- a/animism-align/cli/app/sql/env.py +++ b/animism-align/cli/app/sql/env.py @@ -14,7 +14,7 @@ config.set_main_option("sqlalchemy.url", connection_url) target_metadata = Base.metadata # include the models in reverse dependency order, so relationships work -from app.sql.models.timestamp import Timestamp +from app.sql.models.annotation import Annotation from app.sql.models.paragraph import Paragraph from app.sql.models.upload import Upload diff --git a/animism-align/cli/app/sql/models/annotation.py b/animism-align/cli/app/sql/models/annotation.py new file mode 100644 index 0000000..6cc476c --- /dev/null +++ b/animism-align/cli/app/sql/models/annotation.py @@ -0,0 +1,39 @@ +from sqlalchemy import create_engine, Table, Column, Text, String, Integer, Float, DateTime, JSON, ForeignKey +from sqlalchemy.orm import relationship +import sqlalchemy.sql.functions as func +from sqlalchemy_utc import UtcDateTime, utcnow +from wtforms_alchemy import ModelForm + +from app.sql.common import db, Base, Session +# from app.sql.models.page import Page + +from app.settings import app_cfg + +class Annotation(Base): + """Table for storing references to graphs""" + __tablename__ = 'annotation' + id = Column(Integer, primary_key=True) + type = Column(String(16, convert_unicode=True), nullable=False) + paragraph_id = Column(Integer, ForeignKey('paragraph.id'), nullable=True) + start_ts = Column(Float, nullable=False) + end_ts = Column(Float, nullable=True) + text = Column(Text(convert_unicode=True), nullable=True) + settings = Column(JSON, default={}, nullable=True) + + def toJSON(self): + return { + 'id': self.id, + 'type': self.type, + 'paragraph_id': self.paragraph_id, + 'start_ts': self.start_ts, + 'end_ts': self.end_ts, + 'sentence': self.description, + 'settings': self.settings, + } + +class AnnotationForm(ModelForm): + class Meta: + model = Annotation + exclude = ['settings'] + def get_session(): + return Session() diff --git a/animism-align/cli/app/sql/models/timestamp.py b/animism-align/cli/app/sql/models/timestamp.py deleted file mode 100644 index c2bf410..0000000 --- a/animism-align/cli/app/sql/models/timestamp.py +++ /dev/null @@ -1,39 +0,0 @@ -from sqlalchemy import create_engine, Table, Column, Text, String, Integer, Float, DateTime, JSON, ForeignKey -from sqlalchemy.orm import relationship -import sqlalchemy.sql.functions as func -from sqlalchemy_utc import UtcDateTime, utcnow -from wtforms_alchemy import ModelForm - -from app.sql.common import db, Base, Session -# from app.sql.models.page import Page - -from app.settings import app_cfg - -class Timestamp(Base): - """Table for storing references to graphs""" - __tablename__ = 'timestamp' - id = Column(Integer, primary_key=True) - type = Column(String(16, convert_unicode=True), nullable=False) - paragraph_id = Column(Integer, ForeignKey('paragraph.id'), nullable=True) - start_ts = Column(Float, nullable=False) - end_ts = Column(Float, nullable=True) - sentence = Column(Text(convert_unicode=True), nullable=True) - settings = Column(JSON, default={}, nullable=True) - - def toJSON(self): - return { - 'id': self.id, - 'type': self.type, - 'paragraph_id': self.paragraph_id, - 'start_ts': self.start_ts, - 'end_ts': self.end_ts, - 'sentence': self.description, - 'settings': self.settings, - } - -class TimestampForm(ModelForm): - class Meta: - model = Timestamp - exclude = ['settings'] - def get_session(): - return Session() diff --git a/animism-align/cli/app/sql/versions/202006271347_add_paragraphs.py b/animism-align/cli/app/sql/versions/202006271347_add_paragraphs.py deleted file mode 100644 index cc134b5..0000000 --- a/animism-align/cli/app/sql/versions/202006271347_add_paragraphs.py +++ /dev/null @@ -1,56 +0,0 @@ -"""add paragraphs - -Revision ID: 650f7cdb3174 -Revises: -Create Date: 2020-06-27 13:47:33.766574 - -""" -from alembic import op -import sqlalchemy as sa -import sqlalchemy_utc - - -# revision identifiers, used by Alembic. -revision = '650f7cdb3174' -down_revision = None -branch_labels = None -depends_on = None - - -def upgrade(): - # ### commands auto generated by Alembic - please adjust! ### - op.create_table('paragraph', - sa.Column('id', sa.Integer(), nullable=False), - sa.Column('type', sa.String(length=16, _expect_unicode=True), nullable=False), - sa.Column('settings', sa.JSON(), nullable=True), - sa.PrimaryKeyConstraint('id') - ) - op.create_table('upload', - sa.Column('id', sa.Integer(), nullable=False), - sa.Column('sha256', sa.String(length=256), nullable=False), - sa.Column('fn', sa.String(length=256), nullable=False), - sa.Column('ext', sa.String(length=4, _expect_unicode=True), nullable=False), - sa.Column('username', sa.String(length=16, _expect_unicode=True), nullable=False), - sa.Column('created_at', sqlalchemy_utc.sqltypes.UtcDateTime(timezone=True), nullable=True), - sa.PrimaryKeyConstraint('id') - ) - op.create_table('timestamp', - sa.Column('id', sa.Integer(), nullable=False), - sa.Column('type', sa.String(length=16, _expect_unicode=True), nullable=False), - sa.Column('paragraph_id', sa.Integer(), nullable=True), - sa.Column('start_ts', sa.Float(), nullable=False), - sa.Column('end_ts', sa.Float(), nullable=True), - sa.Column('sentence', sa.Text(_expect_unicode=True), nullable=True), - sa.Column('settings', sa.JSON(), nullable=True), - sa.ForeignKeyConstraint(['paragraph_id'], ['paragraph.id'], ), - sa.PrimaryKeyConstraint('id') - ) - # ### end Alembic commands ### - - -def downgrade(): - # ### commands auto generated by Alembic - please adjust! ### - op.drop_table('timestamp') - op.drop_table('upload') - op.drop_table('paragraph') - # ### end Alembic commands ### diff --git a/animism-align/cli/app/sql/versions/202007041633_create_database.py b/animism-align/cli/app/sql/versions/202007041633_create_database.py new file mode 100644 index 0000000..f8336e5 --- /dev/null +++ b/animism-align/cli/app/sql/versions/202007041633_create_database.py @@ -0,0 +1,56 @@ +"""create database + +Revision ID: f8936a84e584 +Revises: +Create Date: 2020-07-04 16:33:01.643193 + +""" +from alembic import op +import sqlalchemy as sa +import sqlalchemy_utc + + +# revision identifiers, used by Alembic. +revision = 'f8936a84e584' +down_revision = None +branch_labels = None +depends_on = None + + +def upgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.create_table('paragraph', + sa.Column('id', sa.Integer(), nullable=False), + sa.Column('type', sa.String(length=16, _expect_unicode=True), nullable=False), + sa.Column('settings', sa.JSON(), nullable=True), + sa.PrimaryKeyConstraint('id') + ) + op.create_table('upload', + sa.Column('id', sa.Integer(), nullable=False), + sa.Column('sha256', sa.String(length=256), nullable=False), + sa.Column('fn', sa.String(length=256), nullable=False), + sa.Column('ext', sa.String(length=4, _expect_unicode=True), nullable=False), + sa.Column('username', sa.String(length=16, _expect_unicode=True), nullable=False), + sa.Column('created_at', sqlalchemy_utc.sqltypes.UtcDateTime(timezone=True), nullable=True), + sa.PrimaryKeyConstraint('id') + ) + op.create_table('annotation', + sa.Column('id', sa.Integer(), nullable=False), + sa.Column('type', sa.String(length=16, _expect_unicode=True), nullable=False), + sa.Column('paragraph_id', sa.Integer(), nullable=True), + sa.Column('start_ts', sa.Float(), nullable=False), + sa.Column('end_ts', sa.Float(), nullable=True), + sa.Column('text', sa.Text(_expect_unicode=True), nullable=True), + sa.Column('settings', sa.JSON(), nullable=True), + sa.ForeignKeyConstraint(['paragraph_id'], ['paragraph.id'], ), + sa.PrimaryKeyConstraint('id') + ) + # ### end Alembic commands ### + + +def downgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.drop_table('annotation') + op.drop_table('upload') + op.drop_table('paragraph') + # ### end Alembic commands ### -- cgit v1.2.3-70-g09d2