We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent cadeb88 commit 8bd3ab2Copy full SHA for 8bd3ab2
lib/active_admin/sortable_tree/controller_actions.rb
@@ -24,10 +24,12 @@ def sortable(options = {})
24
collection_action :sort, :method => :post do
25
resource_name = ActiveAdmin::SortableTree::Compatibility.normalized_resource_name(active_admin_config.resource_name)
26
27
+ # Query all resources at once to avoid N+1
28
+ resources = Hash[resource_class.where(id: params[resource_name].keys).map { |r| [r.id, r] }]
29
+
30
records = []
31
params[resource_name].each_pair do |resource, parent_resource|
- parent_resource = resource_class.find(parent_resource) rescue nil
- records << [resource_class.find(resource), parent_resource]
32
+ records << [resources[resource], resources[parent_resource]]
33
end
34
35
errors = []
0 commit comments