mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-02-02 21:57:17 +00:00
Use class-based caching for queries in EnterpriseInjectionData
This commit is contained in:
@@ -10,11 +10,25 @@ module OpenFoodNetwork
|
||||
end
|
||||
|
||||
def shipping_method_services
|
||||
@shipping_method_services ||= Spree::ShippingMethod.services
|
||||
@shipping_method_services ||= begin
|
||||
CacheService.cached_data_by_class("shipping_method_services", Spree::ShippingMethod) do
|
||||
# This result relies on a simple join with DistributorShippingMethod.
|
||||
# Updated DistributorShippingMethod records touch their associated Spree::ShippingMethod.
|
||||
Spree::ShippingMethod.services
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def supplied_taxons
|
||||
@supplied_taxons ||= Spree::Taxon.supplied_taxons
|
||||
@supplied_taxons ||= begin
|
||||
CacheService.cached_data_by_class("supplied_taxons", Spree::Taxon) do
|
||||
# This result relies on a join with associated supplied products, through the
|
||||
# class Classification which maps the relationship. Classification records touch
|
||||
# their associated Spree::Taxon when updated. A Spree::Product's primary_taxon
|
||||
# is also touched when changed.
|
||||
Spree::Taxon.supplied_taxons
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def all_distributed_taxons
|
||||
|
||||
Reference in New Issue
Block a user