Sha256: 34e083d0dcf17e3b07655384e0f6ce328a067c27384b01899121a013a4278478
Contents?: true
Size: 619 Bytes
Versions: 5
Compression:
Stored size: 619 Bytes
Contents
module SpreeMobility::CoreExt::Spree::ProductScopesWithMobilityDecorator def ascend_by_taxons_min_position(taxon_ids) # order() must not refer to select(), because select could be removed # in Spree::Products::Find joins(:classifications). where(::Spree::Classification.table_name => { taxon_id: taxon_ids }). select( [ "#{::Spree::Product.table_name}.*", "MIN(#{::Spree::Classification.table_name}.position) AS min_position" ].join(', ') ). group(:id). order(Arel.sql("MIN(#{::Spree::Classification.table_name}.position) ASC")) end end
Version data entries
5 entries across 5 versions & 1 rubygems