Hi Pat,
I tried removing some filters (and use only integers, but I still get
0 results):
>> Contact.search('test contact', {:order=>"first_name asc", :with=>{:deleted
>> => 0, :owner_id => 1573}, :star=>true})
Sphinx Querying: '*test* *contact*'
Sphinx (0.005495s) Found 0 results
=> []
I've made sure to run ts:rebuild to ensure that the latest changes to
define_index have been picked up, but it still returning 0 results.
I'm at a bit of a loss here, since the deleted flag works as expected.
I've double checked the db, and owner_id is correctly set:
mysql> select count(0) from contacts where owner_id = 1573;
+----------+
| count(0) |
+----------+
| 8 |
+----------+
1 row in set (0.01 sec)
On Nov 19, 5:11 pm, Pat Allan <[email protected]> wrote:
> I'm pretty sure the issue is that you're trying to filter on a string - and
> sadly that isn't psosible just yet (though I think that will change once TS
> supports the new Sphinx 1.10-beta features.
>
> Have a read through this for a
> workaround:http://freelancing-god.github.com/ts/en/common_issues.html#string_fil...
>
> Cheers
>
> --
> Pat
>
> On 20/11/2010, at 8:55 AM, gmoniey wrote:
>
>
>
>
>
>
>
> > I'm struggling to get a simple :with clause to work. I can use the
> > with clause to exclude soft deleted items without any problems as
> > such:
>
> >>> Contact.search('test contact', {:order=>"first_name asc",
> >>> :with=>{:deleted => 0}, :star=>true})
> > Sphinx Querying: '*test* *contact*'
> > Sphinx (0.005511s) Found 1 results
> > Contact Load (0.4ms) SELECT * FROM `contacts` WHERE
> > (`contacts`.`id` IN (2595) AND `contacts`.`deleted` = 0)
> > => [#<Contact id: 2595, first_name: "test", last_name: "contact",
> > email: "[email protected]", phone: nil, fax: nil, title: nil, street:
> > nil, city: nil, state: nil, zip: nil, country: nil, owner_table:
> > "companies", owner_id: "1573", user_id: 21, delta: false, deleted:
> > false, created_at: "2010-11-10 01:38:00", updated_at: "2010-11-10
> > 01:38:00">]
>
> > However, when I add additional fields to the with clause, the query
> > returns 0 results:
>
> >>> Contact.search('test contact', {:order=>"first_name asc",
> >>> :with=>{:deleted => 0, :owner_table => "companies", :owner_id => 1573},
> >>> :star=>true})
> > Sphinx Querying: '*test* *contact*'
> > Sphinx (0.003964s) Found 0 results
> > => []
>
> > I've tried different variations of the with clause, but it always
> > returns 0 results. My define_index block looks like:
>
> > define_index do
> > indexes :first_name, :sortable => true
> > indexes :last_name, :sortable => true
> > indexes :email, :sortable => true
>
> > has :deleted, :owner_table, :owner_id
> > set_property :delta => :delayed
> > set_property :field_weights => {:first_name => 10, :last_name =>
> > 7, :email => 5 }
> > end
>
> > I'm using the following:
>
> > rails (2.3.4)
> > thinking-sphinx (1.3.20)
> > ts-delayed-delta (1.1.1)
> > Sphinx 0.9.9-release (r2117)
>
> > Any ideas? 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 at
http://groups.google.com/group/thinking-sphinx?hl=en.