From: Andy Allan Date: Wed, 30 Aug 2023 15:45:04 +0000 (+0100) Subject: Avoid using _id in queries X-Git-Tag: live~1322^2~1 X-Git-Url: https://git.openstreetmap.org./rails.git/commitdiff_plain/f5db9cbb207e17fc8a2f15f681819e9e55aa1906 Avoid using _id in queries This makes the queries shorter and easier to read. --- diff --git a/app/controllers/api/changesets_controller.rb b/app/controllers/api/changesets_controller.rb index a3dff4f1c..7bb7a5a4d 100644 --- a/app/controllers/api/changesets_controller.rb +++ b/app/controllers/api/changesets_controller.rb @@ -325,7 +325,7 @@ module Api raise OSM::APINotFoundError if current_user.nil? || current_user != u end - changesets.where(:user_id => u.id) + changesets.where(:user => u) end end diff --git a/app/controllers/api/notes_controller.rb b/app/controllers/api/notes_controller.rb index 83024288d..e6f391ede 100644 --- a/app/controllers/api/notes_controller.rb +++ b/app/controllers/api/notes_controller.rb @@ -251,7 +251,7 @@ module Api end # Find the comments we want to return - @comments = NoteComment.where(:note_id => notes).order("created_at DESC").limit(result_limit).preload(:note) + @comments = NoteComment.where(:note => notes).order("created_at DESC").limit(result_limit).preload(:note) # Render the result respond_to do |format| diff --git a/app/controllers/changesets_controller.rb b/app/controllers/changesets_controller.rb index 22d3356b7..fef4d85eb 100644 --- a/app/controllers/changesets_controller.rb +++ b/app/controllers/changesets_controller.rb @@ -48,16 +48,16 @@ class ChangesetsController < ApplicationController if @params[:display_name] changesets = if user.data_public? || user == current_user - changesets.where(:user_id => user.id) + changesets.where(:user => user) else changesets.where("false") end elsif @params[:bbox] changesets = conditions_bbox(changesets, BoundingBox.from_bbox_params(params)) elsif @params[:friends] && current_user - changesets = changesets.where(:user_id => current_user.friends.identifiable) + changesets = changesets.where(:user => current_user.friends.identifiable) elsif @params[:nearby] && current_user - changesets = changesets.where(:user_id => current_user.nearby) + changesets = changesets.where(:user => current_user.nearby) end changesets = changesets.where("changesets.id <= ?", @params[:max_id]) if @params[:max_id] diff --git a/app/controllers/diary_entries_controller.rb b/app/controllers/diary_entries_controller.rb index ea6d1d276..dcb625d83 100644 --- a/app/controllers/diary_entries_controller.rb +++ b/app/controllers/diary_entries_controller.rb @@ -27,7 +27,7 @@ class DiaryEntriesController < ApplicationController elsif params[:friends] if current_user @title = t ".title_friends" - entries = DiaryEntry.where(:user_id => current_user.friends) + entries = DiaryEntry.where(:user => current_user.friends) else require_user return @@ -35,7 +35,7 @@ class DiaryEntriesController < ApplicationController elsif params[:nearby] if current_user @title = t ".title_nearby" - entries = DiaryEntry.where(:user_id => current_user.nearby) + entries = DiaryEntry.where(:user => current_user.nearby) else require_user return diff --git a/app/controllers/issues_controller.rb b/app/controllers/issues_controller.rb index 88c7a46ac..c24054f77 100644 --- a/app/controllers/issues_controller.rb +++ b/app/controllers/issues_controller.rb @@ -24,7 +24,7 @@ class IssuesController < ApplicationController if params[:search_by_user].present? @find_user = User.find_by(:display_name => params[:search_by_user]) if @find_user - @issues = @issues.where(:reported_user_id => @find_user.id) + @issues = @issues.where(:reported_user => @find_user) else @issues = @issues.none flash.now[:warning] = t(".user_not_found") diff --git a/app/controllers/user_roles_controller.rb b/app/controllers/user_roles_controller.rb index b54cd0bd7..469b2c40b 100644 --- a/app/controllers/user_roles_controller.rb +++ b/app/controllers/user_roles_controller.rb @@ -22,7 +22,7 @@ class UserRolesController < ApplicationController if current_user == @user && @role == "administrator" flash[:error] = t("user_role.filter.not_revoke_admin_current_user") else - UserRole.where(:user_id => @user.id, :role => @role).delete_all + UserRole.where(:user => @user, :role => @role).delete_all end redirect_to user_path(@user) end diff --git a/app/models/changeset.rb b/app/models/changeset.rb index f23a4e356..ce0943824 100644 --- a/app/models/changeset.rb +++ b/app/models/changeset.rb @@ -170,7 +170,7 @@ class Changeset < ApplicationRecord save! tags = self.tags - ChangesetTag.where(:changeset_id => id).delete_all + ChangesetTag.where(:changeset => id).delete_all tags.each do |k, v| tag = ChangesetTag.new diff --git a/test/controllers/diary_entries_controller_test.rb b/test/controllers/diary_entries_controller_test.rb index 6365d46e5..ea918cb6b 100644 --- a/test/controllers/diary_entries_controller_test.rb +++ b/test/controllers/diary_entries_controller_test.rb @@ -164,7 +164,7 @@ class DiaryEntriesControllerTest < ActionDispatch::IntegrationTest assert_response :success assert_template :new - assert_nil UserPreference.where(:user_id => user.id, :k => "diary.default_language").first + assert_nil UserPreference.where(:user => user, :k => "diary.default_language").first end def test_create @@ -189,7 +189,7 @@ class DiaryEntriesControllerTest < ActionDispatch::IntegrationTest # checks if user was subscribed assert_equal 1, entry.subscribers.length - assert_equal "en", UserPreference.where(:user_id => user.id, :k => "diary.default_language").first.v + assert_equal "en", UserPreference.where(:user => user, :k => "diary.default_language").first.v end def test_create_german @@ -216,7 +216,7 @@ class DiaryEntriesControllerTest < ActionDispatch::IntegrationTest # checks if user was subscribed assert_equal 1, entry.subscribers.length - assert_equal "de", UserPreference.where(:user_id => user.id, :k => "diary.default_language").first.v + assert_equal "de", UserPreference.where(:user => user, :k => "diary.default_language").first.v end def test_new_spammy