From 7ba124ac9179962ea40a4afd29df9b989dd44065 Mon Sep 17 00:00:00 2001 From: Nelson Jovel Date: Thu, 21 Dec 2023 13:54:54 -0800 Subject: [PATCH] chore: prevent multiple lookups for the boston district by inlining the sql --- app/models/district.rb | 4 ---- app/models/survey_item_response.rb | 2 +- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/app/models/district.rb b/app/models/district.rb index 023fac3c..ead33212 100644 --- a/app/models/district.rb +++ b/app/models/district.rb @@ -15,10 +15,6 @@ class District < ApplicationRecord self.slug ||= name.parameterize end - def self.boston - District.find_by_name("Boston") - end - def short_name name.split(" ").first.downcase end diff --git a/app/models/survey_item_response.rb b/app/models/survey_item_response.rb index 0c817923..526ea329 100644 --- a/app/models/survey_item_response.rb +++ b/app/models/survey_item_response.rb @@ -16,7 +16,7 @@ class SurveyItemResponse < ActiveRecord::Base has_one :measure, through: :survey_item scope :exclude_boston, lambda { - where.not(school: District.boston.schools) if District.boston.present? + includes(school: :district).where.not("district.name": "Boston") } scope :averages_for_grade, lambda { |survey_items, school, academic_year, grade|