forked from mirrors/akkoma
Conversations: Fetch users in one query.
This commit is contained in:
parent
d5330ed125
commit
970f71e222
2 changed files with 5 additions and 2 deletions
|
@ -59,10 +59,10 @@ defmodule Pleroma.Conversation.Participation do
|
|||
def for_user(user, params \\ %{}) do
|
||||
from(p in __MODULE__,
|
||||
where: p.user_id == ^user.id,
|
||||
order_by: [desc: p.updated_at]
|
||||
order_by: [desc: p.updated_at],
|
||||
preload: [conversation: [:users]]
|
||||
)
|
||||
|> Pleroma.Pagination.fetch_paginated(params)
|
||||
|> Repo.preload(conversation: [:users])
|
||||
end
|
||||
|
||||
def for_user_with_last_activity_id(user, params \\ %{}) do
|
||||
|
|
|
@ -72,8 +72,11 @@ defmodule Pleroma.Conversation.ParticipationTest do
|
|||
object2 = Pleroma.Object.normalize(activity_two)
|
||||
object3 = Pleroma.Object.normalize(activity_three)
|
||||
|
||||
user = Repo.get(Pleroma.User, user.id)
|
||||
|
||||
assert participation_one.conversation.ap_id == object3.data["context"]
|
||||
assert participation_two.conversation.ap_id == object2.data["context"]
|
||||
assert participation_one.conversation.users == [user]
|
||||
|
||||
# Pagination
|
||||
assert [participation_one] = Participation.for_user(user, %{"limit" => 1})
|
||||
|
|
Loading…
Reference in a new issue