From 6377bc3d64e971eb1dcd7fc49bf6ba4e291c76c8 Mon Sep 17 00:00:00 2001 From: Untone Date: Tue, 20 Feb 2024 12:40:22 +0300 Subject: [PATCH] revert --- orm/community.py | 17 ++--------------- orm/invite.py | 8 +++----- orm/shout.py | 12 ++++-------- 3 files changed, 9 insertions(+), 28 deletions(-) diff --git a/orm/community.py b/orm/community.py index ff156bd9..d721cba6 100644 --- a/orm/community.py +++ b/orm/community.py @@ -3,8 +3,7 @@ import time from sqlalchemy import Column, ForeignKey, Integer, String from sqlalchemy.orm import relationship -from orm.author import Author -from services.db import Base, local_session +from services.db import Base class CommunityAuthor(Base): @@ -26,16 +25,4 @@ class Community(Base): pic = Column(String, nullable=False, default='') created_at = Column(Integer, nullable=False, default=lambda: int(time.time())) - authors = relationship(lambda: Author, secondary=CommunityAuthor.__tablename__) - - @staticmethod - def init_table(): - with local_session('orm.community') as session: - d = session.query(Community).filter(Community.slug == 'discours').first() - if not d: - d = Community(name='Дискурс', slug='discours') - session.add(d) - session.commit() - print('[orm.community] created community %s' % d.slug) - Community.default_community = d - print('[orm.community] default community is %s' % d.slug) + authors = relationship('author', secondary='community_author') diff --git a/orm/invite.py b/orm/invite.py index 975c61bb..116ff1a2 100644 --- a/orm/invite.py +++ b/orm/invite.py @@ -3,8 +3,6 @@ from enum import Enum as Enumeration from sqlalchemy import Column, ForeignKey, String from sqlalchemy.orm import relationship -from orm.author import Author -from orm.shout import Shout from services.db import Base @@ -22,6 +20,6 @@ class Invite(Base): shout_id = Column(ForeignKey('shout.id'), primary_key=True) status = Column(String, default=InviteStatus.PENDING.value) - inviter = relationship(Author, foreign_keys=[inviter_id]) - author = relationship(Author, foreign_keys=[author_id]) - shout = relationship(Shout) + inviter = relationship('author', foreign_keys=[inviter_id]) + author = relationship('author', foreign_keys=[author_id]) + shout = relationship('shout') diff --git a/orm/shout.py b/orm/shout.py index 74e1aa8a..d7d5cd86 100644 --- a/orm/shout.py +++ b/orm/shout.py @@ -3,10 +3,6 @@ import time from sqlalchemy import JSON, Boolean, Column, ForeignKey, Integer, String from sqlalchemy.orm import relationship -from orm.author import Author -from orm.community import Community -from orm.reaction import Reaction -from orm.topic import Topic from services.db import Base @@ -71,10 +67,10 @@ class Shout(Base): layout = Column(String, nullable=False, default='article') media = Column(JSON, nullable=True) - authors = relationship(lambda: Author, secondary='shout_author') - topics = relationship(lambda: Topic, secondary='shout_topic') - communities = relationship(lambda: Community, secondary='shout_community') - reactions = relationship(lambda: Reaction) + authors = relationship('author', secondary='shout_author') + topics = relationship('topic', secondary='shout_topic') + communities = relationship('community', secondary='shout_community') + reactions = relationship('reaction') lang = Column(String, nullable=False, default='ru', comment='Language') version_of = Column(ForeignKey('shout.id'), nullable=True)