Thanks for the info Pat. I had feared this might be the case. I guess
we will live with the primary address for now, unless I can convince
the powers that be that showing multiple instances of the same member
is a 'feature' :)

I appreciate the hard work and incredible functionality, Pat.

Andrew

On Aug 11, 2:14 am, Pat Allan <[email protected]> wrote:
> Hi Andrew
>
> I'm afraid Sphinx only handles single address points for documents, so  
> either you stick with your primary address lat/lng, or have the index  
> defined on Address (yes, I know, it's not that intuitive), and then  
> group results by member_id (an attribute defined for the address).  
> This ensures only one result per member.
>
> This would be a bit of a pain to set up, because there's sorting  
> addresses within groups and sorting the actual groups, but it could be  
> feasible, perhaps?
>
> --
> Pat
>
> On 11/08/2009, at 7:51 AM, Andrew Lippert wrote:
>
>
>
>
>
> > FYI - I am using :through with a hash on the index and it works
> > brilliantly. Terrific job with the implementation, Pat (and team)!
>
> > Fall back here is to skip the multiple address search and stick with
> > the primary address lat/long if necessary. It just isn't ideal for our
> > needs.
>
> > On Aug 10, 11:48 pm, Andrew Lippert <[email protected]> wrote:
> >> You are correct. The index is on Member. The search actually provides
> >> full text capabilities on all the attributes of a member with the
> >> result set limited by the geo portion of the query. So, you can find
> >> all the members with 'Real Estate Agent' in their title or  
> >> description
> >> fields within X miles of your current location (25 miles of Seattle,
> >> for example). Ideally, the search is on Member with the constraint
> >> being the distance from the Addresses. I'd really hate to lose the
> >> flexibility of the current index and query - the configuration was
> >> drop dead simple and elegant. Turning it around would be a bit
> >> cumbersome and counterintuitive.
>
> >> Andrew
>
> >> On Aug 10, 8:41 pm, James Healy <[email protected]> wrote:
>
> >>> I assume your index is defined on your Member class?
>
> >>> How about moving the index to the Address class? That way a geo  
> >>> search
> >>> will return Address instances and you can grab the member by  
> >>> walking the
> >>> objects.
>
> >>> I'm not sure that help with returning distinct Member's, but it  
> >>> might
> >>> still be a step in the right direction.
>
> >>> -- James Healy <jimmy-at-deefa-dot-com>  Tue, 11 Aug 2009 13:37:27  
> >>> +1000
>
> >>> Andrew Lippert wrote:
>
> >>>> Here's one that has me stumped:
>
> >>>> Members has_many Businesses has_many Addresses (geo coded).
>
> >>>> I'd like to be able to do a geo search on members within a  
> >>>> distance of
> >>>> an origin point. I have successfully implemented the search using a
> >>>> rolled up primary_address lat and long (rolled up to the member
> >>>> record). However, that doesn't quite address the need. Ideally, the
> >>>> search index would include a row for each member/business/address
> >>>> which I could then do a geo search against. I would then like to
> >>>> restrict the returned search result set to distinct instances of  
> >>>> the
> >>>> matching members. This would allow me to display the single member
> >>>> record even if the geo search included two associated addresses for
> >>>> the member to business to address associations.
>
> >>>> Here's a real example: One member has a business located in Seattle
> >>>> and a second business located in Portland. I'd like to search for  
> >>>> all
> >>>> members within 25 miles of Seattle and return the member. Then do a
> >>>> search within 500 miles of Seattle (which would match both address
> >>>> records) but return a single instance of the member.
>
> >>>> Any idea on how to configure this index and Sphinx query?
>
> >>>> Thanks for any assistance,
>
> >>>> Andrew Lippert
> >>>> CTO Biznik
--~--~---------~--~----~------------~-------~--~----~
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