繁体   English   中英

Rails 7 - ActiveRecord::Associations::Preloader.new.preload

[英]Rails 7 - ActiveRecord::Associations::Preloader.new.preload

考虑这段代码:

# in Rails 6.1
def preload(resource, relations)
  ActiveRecord::Associations::Preloader.new.preload(resource, relations)
end

所以:我想更改它以与 Rails 7 兼容,所以我写了这个:

def preload(resource, relations)
  ActiveRecord::Associations::Preloader.new(records: resource, associations: relations)
end

我做对了吗? 因为.preload(resource, relations) 在 Rails 7 中不再存在。 如果您有任何其他建议,我非常期待

您快到了。 看起来像这样:

    ActiveRecord::Associations::Preloader.new(
      records: [resource].flatten, # in case if resource is a single ApplicationRecord object
      associations: relations
    ).call

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM