/pool_versions: fix N+1 query problems.
This commit is contained in:
@@ -8,7 +8,7 @@ class PoolVersionsController < ApplicationController
|
|||||||
@pool = Pool.find(params[:search][:pool_id])
|
@pool = Pool.find(params[:search][:pool_id])
|
||||||
end
|
end
|
||||||
|
|
||||||
@pool_versions = PoolArchive.paginated_search(params)
|
@pool_versions = PoolArchive.paginated_search(params).includes(:updater, :pool)
|
||||||
respond_with(@pool_versions)
|
respond_with(@pool_versions)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
class PoolArchive < ApplicationRecord
|
class PoolArchive < ApplicationRecord
|
||||||
belongs_to :updater, :class_name => "User"
|
belongs_to :updater, :class_name => "User"
|
||||||
|
belongs_to :pool
|
||||||
|
|
||||||
def self.enabled?
|
def self.enabled?
|
||||||
Danbooru.config.aws_sqs_archives_url.present?
|
Danbooru.config.aws_sqs_archives_url.present?
|
||||||
@@ -110,14 +111,6 @@ class PoolArchive < ApplicationRecord
|
|||||||
PoolArchive.where("pool_id = ? and version < ?", pool_id, version).order("version desc").first
|
PoolArchive.where("pool_id = ? and version < ?", pool_id, version).order("version desc").first
|
||||||
end
|
end
|
||||||
|
|
||||||
def pool
|
|
||||||
Pool.find(pool_id)
|
|
||||||
end
|
|
||||||
|
|
||||||
def updater
|
|
||||||
User.find(updater_id)
|
|
||||||
end
|
|
||||||
|
|
||||||
def pretty_name
|
def pretty_name
|
||||||
name.tr("_", " ")
|
name.tr("_", " ")
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user