Hi Pat, Yes, this clears up some of the confusion. Thanks for replying back!
Cheers, Siddhant On Sunday, March 15, 2015 at 1:05:31 PM UTC+1, Pat Allan wrote: > > Hi Siddhant > > The search method is mixed into ActiveRecord::Base instead of each model > that has a search index - this is because with TS v3 there is now nothing > in the model that indicates there’s an index definition. This is part of > changes in TS v3 that were made for better performance in the development > environment (avoiding the behaviour in TS v1/v2 where it would load *all* > models to see which ones have Sphinx indices defined on every request). > > So, this means it’s best not have search class methods on models. > > As for the mixing scopes issue - you cannot use ActiveRecord scopes with > Sphinx queries, as one is SQL, and the other is SphinxQL (similar, but not > identical). I’d recommend using a Sphinx scope instead: > http://pat.github.io/thinking-sphinx/scopes.html > > Hope this helps - let me know if there’s any further questions. > > Cheers > > — > Pat > > > On 15 Mar 2015, at 9:17 pm, Siddhant Goel <[email protected] > <javascript:>> wrote: > > > > Hi everyone, > > > > I'm working on upgrading some legacy rails code, and in the process, > also updated TS from version 2 to 3. After upgrading though, I can't get > the searches to work properly. From the models I have, only one is using > Sphinx, while the others rely on database queries. > > > > The relevant code looks like the following - > https://gist.github.com/siddhantgoel/2dfb0e7c309a348e733f > > > > What I find strange is that ActiveRecord::Base.search is always > returning a ThinkingSphinx::Search object, even in the models which don't > have an index defined in app/indices. So in the non-indexed models > (contact.rb in this case), calling the search method throws a > ThinkingSphinx::NoIndicesError. And in applicant.rb, it throws a > ThinkingSphinx::MixedScopesError saying "You cannot search with Sphinx > through ActiveRecord scopes". Any ideas? Thanks! > > > > Siddhant > > > > -- > > You received this message because you are subscribed to the Google > Groups "Thinking Sphinx" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email to [email protected] <javascript:>. > > To post to this group, send email to [email protected] > <javascript:>. > > Visit this group at http://groups.google.com/group/thinking-sphinx. > > For more options, visit https://groups.google.com/d/optout. > > -- You received this message because you are subscribed to the Google Groups "Thinking Sphinx" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/thinking-sphinx. For more options, visit https://groups.google.com/d/optout.
