diff options
| author | erdgeist <erdgeist@erdgeist.org> | 2026-07-10 21:57:58 +0200 |
|---|---|---|
| committer | erdgeist <erdgeist@erdgeist.org> | 2026-07-10 21:57:58 +0200 |
| commit | 7d6a665b896252537b8b8df2f15e204d04417231 (patch) | |
| tree | 37b8d5434426646a019c6d5c8c12f7bb8a4de647 /app/controllers | |
| parent | 48eed5f35ea798c91f1e0a77c13e751145acfc48 (diff) | |
Fix current_user/uniq inconsistencies in admin#index, remove dead query
@mynodes used the bare @current_user ivar instead of the current_user
method (works today only because login_required already forces that
memoization; every other query and controller in this app uses the
method), and .uniq, which is plain Enumerable#uniq here, not
Relation#distinct -- it materializes every joined row into an Array
before deduplicating, rather than deduplicating in SQL.
@mypages had the same ivar pattern, no .order/.limit unlike every
sibling query in this action, and -- confirmed via a full grep -- is
referenced nowhere else in the codebase. Removed rather than bounded;
nothing was ever rendering it.
Diffstat (limited to 'app/controllers')
| -rw-r--r-- | app/controllers/admin_controller.rb | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/app/controllers/admin_controller.rb b/app/controllers/admin_controller.rb index 6ab2135..435df57 100644 --- a/app/controllers/admin_controller.rb +++ b/app/controllers/admin_controller.rb | |||
| @@ -20,12 +20,10 @@ class AdminController < ApplicationController | |||
| 20 | ordered_with_level.each { |node, level| @sitemap_depth[node.id] = level } | 20 | ordered_with_level.each { |node, level| @sitemap_depth[node.id] = level } |
| 21 | @sitemap = ordered_with_level.map(&:first).reject(&:update?) | 21 | @sitemap = ordered_with_level.map(&:first).reject(&:update?) |
| 22 | 22 | ||
| 23 | @mypages = Page.where("user_id = ? or editor_id = ?", @current_user, @current_user) | ||
| 24 | |||
| 25 | @mynodes = Node.joins(:pages) | 23 | @mynodes = Node.joins(:pages) |
| 26 | .where("pages.user_id = ? or pages.editor_id = ?", @current_user, @current_user) | 24 | .where("pages.user_id = ? or pages.editor_id = ?", current_user, current_user) |
| 27 | .order("updated_at desc") | 25 | .order("updated_at desc") |
| 28 | .uniq.first(50) | 26 | .distinct.first(50) |
| 29 | end | 27 | end |
| 30 | 28 | ||
| 31 | def conventions | 29 | def conventions |
