I had an advice from the Ultrasphinx official forum to try with aliasing
the topic_id as an unique id name. So I tried this configuration:
is_indexed :fields => ['title','description','created_at',
{:field => 'topic_id', :as => 'video_topic_id'}],
:delta => {:field => 'created_at'}
(topic_id is an integer column that is part of Video model)
After that running: rake ulrasphinx:configure; rake ultrasphinx:index;
However the same error occurs:
-------------------------------
>> Ultrasphinx::Search.new(:query => "london", :class_names => "Video"
>> ).run.total_entries
=> 1
>> Ultrasphinx::Search.new(:query => "london", :class_names => "Video",
>> :filters => {:video_topic_id => 17} ).run.total_entries
Ultrasphinx::UsageError: field "video_topic_id" is invalid
-------------------------------
In case that there's someone who has successfully run a similar task,
share your configurations, please.
Stanislav Bozhkov wrote:
> I can not make it work in any way. I'm dealing with this a whole workday
> today.
>
> So, I have tried all of these setups:
> ----------------
> class Video < ActiveRecord::Base
> ...
> belongs_to :topic
> ...
> is_indexed :fields => ['title','description','created_at'],
> :include => [
> {:association_name => 'topic', :field => 'id', :as =>
> 'topic_id'}
> ],
> :delta => {:field => 'created_at'}
> ...
> end
>
> @sphinx = Ultrasphinx::Search.new(:query => "london", :class_names =>
> "Video", :filters => {:topic_id => 17} ).run.total_entries
>
> Ultrasphinx::UsageError: field "topic_id" is invalid
>
> ---------------
> is_indexed :fields => ['title','description','created_at','topic_id'],
>
> @sphinx = Ultrasphinx::Search.new(:query => "london", :class_names =>
> "Video", :filters => {:topic_id => 17} ).run.total_entries
>
> Ultrasphinx::UsageError: field "topic_id" is invalid
>
> --------------
> is_indexed :fields => ['title','description','created_at'],
> :include => [
> {:association_name => 'topic', :field => 'id', :as =>
> 'topic_id2'}
>
>
> @sphinx = Ultrasphinx::Search.new(:query => "london", :class_names =>
> "Video", :filters => {:topic_id2 => 17} ).run.total_entries
>
> Ultrasphinx::UsageError: field "topic_id2" is invalid
>
> ----------
>
> After each change of configuration I run
> rake ultrasphinx:configure
> rake ultrasphinx:index
>
> No real results. I just can't make it work with :filters . I'm using
> ultrasphinx 1.11 .
>
> Every idea and help is highly appreciated.
>
> 10x in advance.
--
Posted via http://www.ruby-forum.com/.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby
on Rails: Talk" 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/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---