OK, my get_radian method was the problem, I was sending it the wrong
parameters.
instead of ..
l = (Geokit::Geocoders::GoogleGeocoder.geocode 'xxxxx').ll
la = Address.get_radian(l[0], l[1])
it should be
l = (Geokit::Geocoders::GoogleGeocoder.geocode 'xxxxx')
la = Address.get_radian(l.lat, l.lng)
My apologies for the silly mistake!
So now it works. But I have another problem.
I am using geo search on two models Store and Article
When I do this..
Article.search(:geo => ll, :with => {"@geodist" => 0.00..(20 *
1609.344)})..it works
Store.search(:geo => ll, :with => {"@geodist" => 0.00..(20 *
1609.344)})..it works
ThinkingSphinx.search ("lorem") works too.
ThinkingSphinx.search(:geo => ll, :with => {"@geodist" => 0.00..(20 *
1609.344)}, :classes => [Article]) or ThinkingSphinx.search(:geo =>
ll, :with => {"@geodist" => 0.00..(20 * 1609.344)}. :classes =>
[Store])...works too!
But.
ThinkingSphinx.search(:geo => ll, :with => {"@geodist" => 0.00..(20 *
1609.344)}) or ThinkingSphinx.search(:geo => ll, :with => {"@geodist"
=> 0.00..(20 * 1609.344)}. :classes => [Store, Article])..does not
work.
Any reason?
Thanks
On May 31, 9:42 am, badnaam <[email protected]> wrote:
> Could this be happening because lat and lng is stored in a polymorphic
> association? Perhaps the address pluralization issue is causing
> problems internally? Strange thing is that without the @geodist option
> it does product results. Is there a log somewhere that can shed more
> light?
>
> Thanks!
>
> On May 31, 12:47 am, badnaam <[email protected]> wrote:
>
> > I tried that still no result. strange.
>
> > On May 30, 11:33 pm, Pat Allan <[email protected]> wrote:
>
> > > I'm not sure if it matters, but try changing your set_property values to
> > > symbols instead of strings. Although really, you shouldn't need them,
> > > since you're using standard attribute names.
>
> > > Have you restarted Sphinx (and reindexed) since adding the lat/lng
> > > attributes?
>
> > > --
> > > Pat
>
> > > On 31/05/2010, at 4:30 PM, badnaam wrote:
>
> > > > define_index do
> > > > indexes :name, :sortable => true
>
> > > > indexes address.city, :as => :city
>
> > > > has created_at, updated_at
>
> > > > has 'RADIANS(addresses.lat)', :as
> > > > => :latitude, :type => :float
> > > > has 'RADIANS(addresses.lng)',:as => :longitude, :type
> > > > => :float
>
> > > > set_property :latitude_attr => "latitude"
> > > > set_property :longitude_attr => "longitude"
>
> > > > end
>
> > > > On May 30, 5:38 pm, Pat Allan <[email protected]> wrote:
> > > >> What does your define_index block look like in your Store model?
>
> > > >> --
> > > >> Pat
>
> > > >> On 31/05/2010, at 6:53 AM, badnaam wrote:
>
> > > >>> I am trying to do a proximity search like..
>
> > > >>> l = (Geokit::Geocoders::GoogleGeocoder.geocode 'xxxxx').ll
>
> > > >>> la = Address.get_radian(l[0], l[1])
>
> > > >>> def self.get_radian(lat, lng)
> > > >>> return [(lat / 180.0) * Math::PI, (lng / 180.0) * Math::PI]
> > > >>> end
>
> > > >>> Store.search("green", :geo => la, :with => {"@geodist" =>
> > > >>> 0.0..50_000.0})
>
> > > >>> This returns no results, I know it should return some records, and it
> > > >>> does if I take the @geodist out, what am I doing wrong here?
>
> > > >>> 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
> > > >>> 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.