pop-fix
All checks were successful
deploy / deploy (push) Successful in 1m55s

This commit is contained in:
Untone 2023-12-09 21:03:53 +03:00
parent d37f68869c
commit b992a73698

View File

@ -100,7 +100,7 @@ async def get_shout(_, _info, slug=None, shout_id=None):
for author in shout.authors: for author in shout.authors:
if author.id == author_caption.author: if author.id == author_caption.author:
author.caption = author_caption.caption author.caption = author_caption.caption
shout.main_topic = session.query(Topic.slug).join(ShoutTopic, and_(ShoutTopic.topic == Topic.id, ShoutTopic.shout == shout.id, ShoutTopic.main == True)).first() shout.main_topic = session.query(Topic.slug).join(ShoutTopic, and_(ShoutTopic.topic == Topic.id, ShoutTopic.shout == shout.id, ShoutTopic.main == True)).first().pop()
return shout return shout
except Exception: except Exception:
raise HTTPException(status_code=404, detail=f"shout {slug or shout_id} not found") raise HTTPException(status_code=404, detail=f"shout {slug or shout_id} not found")
@ -159,7 +159,7 @@ async def load_shouts_by(_, _info, options):
shouts = [] shouts = []
with local_session() as session: with local_session() as session:
for [shout, reacted_stat, commented_stat, rating_stat, _last_comment] in session.execute(q).unique(): for [shout, reacted_stat, commented_stat, rating_stat, _last_comment] in session.execute(q).unique():
shout.main_topic = session.query(Topic.slug).join(ShoutTopic, and_(ShoutTopic.topic == Topic.id, ShoutTopic.shout == shout.id, ShoutTopic.main == True)).first() shout.main_topic = session.query(Topic.slug).join(ShoutTopic, and_(ShoutTopic.topic == Topic.id, ShoutTopic.shout == shout.id, ShoutTopic.main == True)).first().pop()
shout.stat = { shout.stat = {
"viewed": await ViewedStorage.get_shout(shout.slug), "viewed": await ViewedStorage.get_shout(shout.slug),
"reacted": reacted_stat, "reacted": reacted_stat,
@ -196,7 +196,7 @@ async def load_shouts_drafts(_, info):
shout.main_topic = session.query(ShoutTopics.topic_slug).filter( shout.main_topic = session.query(ShoutTopics.topic_slug).filter(
ShoutTopics.shout_id == shout.id, ShoutTopics.shout_id == shout.id,
ShoutTopics.main == True ShoutTopics.main == True
).first() ).first().pop()
shouts.append(shout) shouts.append(shout)
return shouts return shouts
@ -249,7 +249,7 @@ async def load_shouts_feed(_, info, options):
shouts = [] shouts = []
for [shout, reacted_stat, commented_stat, rating_stat, _last_comment] in session.execute(q).unique(): for [shout, reacted_stat, commented_stat, rating_stat, _last_comment] in session.execute(q).unique():
shout.main_topic = session.query(Topic.slug).join(ShoutTopic, and_(ShoutTopic.topic == Topic.id, ShoutTopic.shout == shout.id, ShoutTopic.main == True)).first() shout.main_topic = session.query(Topic.slug).join(ShoutTopic, and_(ShoutTopic.topic == Topic.id, ShoutTopic.shout == shout.id, ShoutTopic.main == True)).first().pop()
shout.stat = { shout.stat = {
"viewed": await ViewedStorage.get_shout(shout.slug), "viewed": await ViewedStorage.get_shout(shout.slug),
"reacted": reacted_stat, "reacted": reacted_stat,