Improve media attached status query (#16105)
This commit is contained in:
parent
7f0c49c58a
commit
1f47511023
3 changed files with 3 additions and 8 deletions
|
@ -77,11 +77,7 @@ class AccountsController < ApplicationController
|
||||||
end
|
end
|
||||||
|
|
||||||
def only_media_scope
|
def only_media_scope
|
||||||
Status.where(id: account_media_status_ids)
|
Status.joins(:media_attachments).group(:id)
|
||||||
end
|
|
||||||
|
|
||||||
def account_media_status_ids
|
|
||||||
@account.media_attachments.attached.reorder(nil).select(:status_id).group(:status_id)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def no_replies_scope
|
def no_replies_scope
|
||||||
|
|
|
@ -14,8 +14,7 @@ module Admin
|
||||||
@statuses = @account.statuses.where(visibility: [:public, :unlisted])
|
@statuses = @account.statuses.where(visibility: [:public, :unlisted])
|
||||||
|
|
||||||
if params[:media]
|
if params[:media]
|
||||||
account_media_status_ids = @account.media_attachments.attached.reorder(nil).select(:status_id).group(:status_id)
|
@statuses.merge!(Status.joins(:media_attachments).group(:id))
|
||||||
@statuses.merge!(Status.where(id: account_media_status_ids))
|
|
||||||
end
|
end
|
||||||
|
|
||||||
@statuses = @statuses.preload(:media_attachments, :mentions).page(params[:page]).per(PER_PAGE)
|
@statuses = @statuses.preload(:media_attachments, :mentions).page(params[:page]).per(PER_PAGE)
|
||||||
|
|
|
@ -42,7 +42,7 @@ class Api::V1::Accounts::StatusesController < Api::BaseController
|
||||||
end
|
end
|
||||||
|
|
||||||
def only_media_scope
|
def only_media_scope
|
||||||
Status.joins(:media_attachments).merge(@account.media_attachments.reorder(nil)).group(:id)
|
Status.joins(:media_attachments).group(:id)
|
||||||
end
|
end
|
||||||
|
|
||||||
def pinned_scope
|
def pinned_scope
|
||||||
|
|
Loading…
Reference in a new issue