Переделка бд
This commit is contained in:
parent
8b3b7f2a07
commit
3278973261
2 changed files with 32 additions and 1 deletions
|
@ -15,6 +15,7 @@ class SMessage(BaseModel):
|
||||||
created_at: datetime
|
created_at: datetime
|
||||||
avatar_image: str
|
avatar_image: str
|
||||||
answer_id: int | None
|
answer_id: int | None
|
||||||
|
# answer_message: str | None
|
||||||
|
|
||||||
|
|
||||||
class SMessageList(BaseModel):
|
class SMessageList(BaseModel):
|
||||||
|
|
|
@ -50,6 +50,34 @@ class ChatDAO(BaseDAO):
|
||||||
return result.scalar()
|
return result.scalar()
|
||||||
|
|
||||||
async def get_message_by_id(self, message_id: int):
|
async def get_message_by_id(self, message_id: int):
|
||||||
|
|
||||||
|
# query = (
|
||||||
|
# select(
|
||||||
|
# func.json_build_object(
|
||||||
|
# "id", Message.id,
|
||||||
|
# "message", Message.message,
|
||||||
|
# "image_url", Message.image_url,
|
||||||
|
# "chat_id", Message.chat_id,
|
||||||
|
# "user_id", Message.user_id,
|
||||||
|
# "created_at", Message.created_at,
|
||||||
|
# "avatar_image", Users.avatar_image,
|
||||||
|
# "username", Users.username,
|
||||||
|
# "answer_id", MessageAnswer.answer_id,
|
||||||
|
# "answer_message", select(
|
||||||
|
# Message.message
|
||||||
|
# )
|
||||||
|
# .select_from(MessageAnswer)
|
||||||
|
# .join(Message, Message.id == MessageAnswer.answer_id, isouter=True)
|
||||||
|
# .where(Message.id == answer_id)
|
||||||
|
# .scalar_subquery()
|
||||||
|
# )
|
||||||
|
# )
|
||||||
|
# .select_from(Message)
|
||||||
|
# .join(Users, Users.id == Message.user_id)
|
||||||
|
# .join(MessageAnswer, MessageAnswer.self_id == Message.id, isouter=True)
|
||||||
|
# .where(Message.id == self_id)
|
||||||
|
# )
|
||||||
|
|
||||||
query = (
|
query = (
|
||||||
select(
|
select(
|
||||||
Message.id,
|
Message.id,
|
||||||
|
@ -152,7 +180,9 @@ class ChatDAO(BaseDAO):
|
||||||
"answer_message", select(
|
"answer_message", select(
|
||||||
Message.message
|
Message.message
|
||||||
)
|
)
|
||||||
.where(Message.id == answer_id)
|
.select_from(MessageAnswer)
|
||||||
|
.join(Message, Message.id == MessageAnswer.answer_id, isouter=True)
|
||||||
|
.where(MessageAnswer.self_id == self_id)
|
||||||
.scalar_subquery()
|
.scalar_subquery()
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
Loading…
Add table
Reference in a new issue