如何避免附件 N+1
How to avoid attachment N+1
给出
class User < ApplicationRecord
has_one_attached :avatar
def avatar_path
Rails.application.routes.url_helpers.rails_blob_path avatar,
disposition: 'inline',
only_path: true
end
end
class UsersController < ApplicationController
def index
@users = User.all
end
end
如何在尝试显示每个头像时避免对 active_storage_attachments
和 active_storage_blobs
的 N+1 查询?
根据 ActiveStorage's examples,您可以使用 #with_attached_A
,其中 A
是附件的名称:
User.all.with_attached_avatar
同样,如果你有很多附件,你可以使用#with_attached_As
。
给出
class User < ApplicationRecord
has_one_attached :avatar
def avatar_path
Rails.application.routes.url_helpers.rails_blob_path avatar,
disposition: 'inline',
only_path: true
end
end
class UsersController < ApplicationController
def index
@users = User.all
end
end
如何在尝试显示每个头像时避免对 active_storage_attachments
和 active_storage_blobs
的 N+1 查询?
根据 ActiveStorage's examples,您可以使用 #with_attached_A
,其中 A
是附件的名称:
User.all.with_attached_avatar
同样,如果你有很多附件,你可以使用#with_attached_As
。