I think it's the following line that's causing the problem:
indexes manufacturer.name, :as => :manufacturer_name
Try:
indexes manufacturer(:name), :as => :manufacturer_name
Everything else seems to be right.
Cheers
--
Pat
On 25/02/2009, at 5:11 PM, Josh Owens wrote:
>
> Pat,
>
> Thanks for the response, but I can't seem to get the code working.
>
> My index block looks like this:
>
> define_index do
> indexes part_number
> indexes "REPLACE(REPLACE(part_number, '/', ''), '-', '')", :as
> => :part_number_alphanumeric
> indexes description, keywords
> indexes manufacturer.name, :as => :manufacturer_name
> indexes categories(:name), :as => :category_names
> has categories(:id), :as => :category_ids
> set_property :field_weights => {"part_number" => 100,
> "description" => 50, "keywords" => 10}
> set_property :enable_star => true
> set_property :min_prefix_len => 3
> where "searchable = 1"
> end
>
> And I get this error when I try to rake ts:config:
>
> rake aborted!
> Cannot define a field with no columns. Maybe you are trying to index a
> field with a reserved name (id, name). You can fix this error by using
> a symbol rather than a bare name (:id instead of id).
>
>
> On Feb 24, 12:46 am, Pat Allan <[email protected]> wrote:
>> Hi Josh
>>
>> There's a few approaches I can think of. First up is ignore_chars,
>> which could be used to strip out slashes and
>> dashes.http://sphinxsearch.com/docs/current.html#conf-ignore-chars
>>
>> However, a better approach might be to have three fields, all built
>> off the same column (assuming MySQL, change as needed):
>>
>> indexes part_number
>> indexes "REPLACE(part_number, '/', '')", :as
>> => :part_number_no_slash
>> indexes "REPLACE(REPLACE(part_number, '/', ''), '-', '')", :as
>> => :part_number_alphanumeric
>>
>> It's not the neatest looking approach, but it would keep your query
>> super-simple... well, provided you're not looking at focusing the
>> search on a specific field. If that's the case, I'd probably wrap all
>> three of the above options into a single field via raw SQL.
>>
>> Hope this helps.
>>
>> Cheers
>>
>> --
>> Pat
>>
>> On 24/02/2009, at 4:38 PM, Josh Owens wrote:
>>
>>
>>
>>> Hey,
>>
>>> I am trying to use Thinking Sphinx to match cisco part numbers,
>>> but I
>>> need to match a couple variations of the part number.
>>
>>> For example: I have a part number: WS-C19/28EEUG. I need to match
>>> the
>>> exact part number, but also WSC1928EEUG, and WSC-1928EEUG. Is
>>> there a
>>> way to strip out non-alphanumeric characters for matching, or
>>> would I
>>> need to do it by hand in the search query and with an extra db field
>>> that gets indexed?
>>
>>> Thanks for the help.
> >
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---