Hi Kyle Thinking Sphinx doesn't actually implement find, and find is a SQL method, whereas sphinx scopes are for Sphinx. Which means you can't mix and match - this is the reason I added sphinx scopes, because normal named scopes aren't Sphinx-friendly.
No idea about the all method not working... what does the log show after creating the new object initially, then running Item.all.include?(item)? Cheers -- Pat On 22/07/2010, at 6:08 AM, Kyle Fox wrote: > It appears ThinkingSphinx's `find()` method works differently on > sphinx_scopes than expected (and is undocumented): > > Item.find(1) > => #<Item id: 1 ... > > > Item.my_sphinx_scope.find(1) > => #<Enumerable::Enumerator:0x1076842c0> > > Again, is this the intended behaviour? IMO it would be much cleaner > if ThinkingSphinx's API was as similar as possible to ActiveRecord's > when using methods of the same name. > > > > On Jul 21, 11:28 am, Kyle Fox <[email protected]> wrote: >> I'm seeing odd behaviour in models with a sphinx index (models without >> an index appear to be unaffected). The `.all` class method behaves >> funny from the console -- it doesn't include instances created during >> that session. Stopping and restarting the console fixes the behaviour >> (rebuilding the index has no effect). I'm wondering if this is >> normal. >> >> Here's an example to illustrate: >> >> item = Item.create(params) >> => #<Item id: 1 ... > >> >> Item.all.length >> => 1 >> >> Item.all.include?(item) >> => false >> >> Item.find(item.id) >> => #<Item id: 1 ... > >> >> --- Exit & open a new console session --- >> >> item = Item.find(item.id) >> => #<Item id: 1 ... > >> >> Item.all.include?(item) >> => true >> >> Any insight would be appreciated -- thanks! > > -- > 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.
