I'll figure it out. Thanks again for your consistent support. =)
On May 12, 12:47 am, Pat Allan <[email protected]> wrote: > You may want to add store_id to the product index, and then group by that? > Though it's not *entirely* reliable, the Sphinx docs say. > > http://www.sphinxsearch.com/docs/manual-0.9.9.html#clusteringhttp://freelancing-god.github.com/ts/en/searching.html#grouping > > -- > Pat > > On 12/05/2010, at 3:41 PM, Nick Kezhaya wrote: > > > > > > > Well, I *do* have a search for products set in place, and it works > > really well. I just created a :without => { :kosher_id => 0 } and the > > filter worked flawlessly. > > > Unfortunately, my client also needs users to be able to search for > > *stores* that have those particular attributes. Am I really going to > > have to use collect() until I get a sufficient amount of stores? :\ > > > On May 12, 12:38 am, Pat Allan <[email protected]> wrote: > >> Ah, in that case, I'd be searching on Products, not Stores... Sphinx has > >> no concept of key-value pairs, so it doesn't know which product names are > >> tied to which kosher ids from the perspective of a Store. > > >> -- > >> Pat > > >> On 12/05/2010, at 3:33 PM, Nick Kezhaya wrote: > > >>> Ahh, perhaps I should better explain what I'm trying to do... > > >>> These conditions need to be met: > > >>> 1) The stores returned MUST have products that match "chicken" - > >>> easily doable. > >>> 2) Tricky: the products matching "chicken" in that store *cannot* have > >>> a kosher_id of 0. > > >>> On May 12, 12:29 am, Nick Kezhaya <[email protected]> wrote: > >>>> Oh! I didn't know about sphinx_attributes(). > > >>>> It appears that product_kosher_ids is properly returning a large array > >>>> of integers of the ids; however, because some of the products in each > >>>> store aren't kosher, and some are, the first int at the beginning of > >>>> this array is 0, along with the rest of them. > > >>>> How do I go about determining if product_kosher_ids returns more than > >>>> 0? > > >>>> On May 11, 10:04 pm, Pat Allan <[email protected]> wrote: > > >>>>> Hi Nick > > >>>>> I'm not sure what the issue is, so can you run the following in > >>>>> script/console: > > >>>>> Store.search(:conditions => {:product_names => 'chicken'}).collect { > >>>>> |store| > >>>>> store.sphinx_attributes['product_kosher_ids'] > >>>>> } > > >>>>> This will get us the details on what Sphinx is storing for that > >>>>> attribute. > > >>>>> -- > >>>>> Pat > > >>>>> On 12/05/2010, at 11:57 AM, Nick Kezhaya wrote: > > >>>>>> class Store < ActiveRecord::Base > >>>>>> has_many :product_stores > >>>>>> has_many :products, :through => :product_stores > > >>>>>> define_index do > >>>>>> indexes :name > >>>>>> indexes [products(:name), products(:brand)], :as => :product_names > > >>>>>> has products(:kosher_id), :as => :product_kosher_ids > >>>>>> end > >>>>>> end > > >>>>>> Oddly: > > >>>>>> Store.search :conditions => { :product_names => 'chicken' } > > >>>>>> ^ This returns stores properly, but: > > >>>>>> Store.search :conditions => { :product_names => 'chicken' }, :without > >>>>>> => { :product_kosher_ids => 0 } > > >>>>>> ^ Returns an empty array. I've no idea why. > > >>>>>> I know the data is present in the database. > > >>>>>> -- > >>>>>> 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 > >>>>>> athttp://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 > >>>>> athttp://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 > >>>> athttp://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 > >>> athttp://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 > >> athttp://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 > > athttp://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 > athttp://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.
