Not really sure why this is happening - looks like you're doing everything 
right.

Just to confirm: is the attribute a single id for Offer, but multiple for 
Product? I wonder if Sphinx isn't happy that they're different data types (MVA 
vs single integer).

-- 
Pat

On 05/09/2011, at 6:14 PM, aussie-fan wrote:

> Hi,
> 
> I'm a little bit confused.
> 
> I try to group by an attribute called 'shop_id' in an application wide
> search:
> ts = ThinkingSphinx.search(:classes => [Offer,
> Product], :match_mode=>:any, :with=>{:showable=>true, :matched_to_product=>[0,
> 2]}, :ignore_errors=>false, :page=>1, :per_page=>12, :sort_mode=>:extended, 
> :order=>"ranking
> DESC, @relevance
> DESC", :group_by=>"shop_id", :group_function=>:attr, :group_clause=>"@count
> desc")
> 
> Both models have this integer attribute.
> class Product
>  has shop_participations(:shop_id), :as => :shop_id
> end
> 
> class Offer
>  has shop_participation(:shop_id), :as => :shop_id
> end
> 
> But it results in:
> ThinkingSphinx::SphinxError: group-by attribute 'shop_id' not found
>       from /home/sebastian/.rvm/gems/ruby-1.9.2-p180@rails3/gems/thinking-
> sphinx-2.0.5/lib/thinking_sphinx/search.rb:406:in `block in populate'
>       from /home/sebastian/.rvm/gems/ruby-1.9.2-p180@rails3/gems/thinking-
> sphinx-2.0.5/lib/thinking_sphinx/search.rb:551:in `call'
>       from /home/sebastian/.rvm/gems/ruby-1.9.2-p180@rails3/gems/thinking-
> sphinx-2.0.5/lib/thinking_sphinx/search.rb:551:in
> `retry_on_stale_index'
>       from /home/sebastian/.rvm/gems/ruby-1.9.2-p180@rails3/gems/thinking-
> sphinx-2.0.5/lib/thinking_sphinx/search.rb:394:in `populate'
>       from /home/sebastian/.rvm/gems/ruby-1.9.2-p180@rails3/gems/thinking-
> sphinx-2.0.5/lib/thinking_sphinx/search.rb:176:in `method_missing'
>       from /home/sebastian/.rvm/gems/ruby-1.9.2-p180@rails3/gems/
> railties-3.0.4/lib/rails/commands/console.rb:44:in `start'
>       from /home/sebastian/.rvm/gems/ruby-1.9.2-p180@rails3/gems/
> railties-3.0.4/lib/rails/commands/console.rb:8:in `start'
>       from /home/sebastian/.rvm/gems/ruby-1.9.2-p180@rails3/gems/
> railties-3.0.4/lib/rails/commands.rb:23:in `<top (required)>'
>       from script/rails:7:in `require'
>       from script/rails:7:in `<main>'
> 
> If I do the search for each model, there's no problem:
> os =
> Offer.search(:match_mode=>:any, :with=>{:showable=>true, 
> :matched_to_product=>[0,
> 2]}, :ignore_errors=>false, :page=>1, :per_page=>12, :sort_mode=>:extended, 
> :order=>"ranking
> DESC, @relevance
> DESC", :group_by=>"shop_id", :group_function=>:attr, :group_clause=>"@count
> desc")
> 
> ps =
> Product.search(:match_mode=>:any, :with=>{:showable=>true, 
> :matched_to_product=>[0,
> 2]}, :ignore_errors=>false, :page=>1, :per_page=>12, :sort_mode=>:extended, 
> :order=>"ranking
> DESC, @relevance
> DESC", :group_by=>"shop_id", :group_function=>:attr, :group_clause=>"@count
> desc")
> 
> But why?
> 
> Aussie-Fan
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Thinking Sphinx" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to 
> [email protected].
> For more options, visit this group at 
> http://groups.google.com/group/thinking-sphinx?hl=en.
> 

-- 
You received this message because you are subscribed to the Google Groups 
"Thinking Sphinx" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/thinking-sphinx?hl=en.

Reply via email to