ThinkingSphinx не принимает условия - PullRequest
0 голосов
/ 29 апреля 2009

У меня проблемы с тем, чтобы ThinkingSphinx распознал мои состояния.

Модель My Discussion включает следующий код:

define_index do
  indexes [subject, body], :as => :text
  indexes replies.body, :as => :reply_text
  set_property :delta => true
end

И, как и ожидалось, этот поиск

Discussion.search "handy"

возвращает любое обсуждение со словом «удобный» в теме, тексте или теле одного из ответов.

Теперь я реализую функцию «удаления сообщений» и хочу показывать только обсуждения, в которых поле называется: disabled == false.

К сожалению, этот поиск:

Discussion.search "handy", :conditions => { :disabled => false }

всегда возвращает пустой массив, несмотря ни на что.

Почему?

1 Ответ

1 голос
/ 30 апреля 2009

Вам понадобится атрибут disabled, определенный в вашем блоке define_index:

define_index do
  indexes [subject, body], :as => :text
  indexes replies.body, :as => :reply_text

  has disabled

  set_property :delta => true
end

После того, как вы это сделаете, остановите Sphinx, переиндексируйте и перезапустите, и, надеюсь, это сработает.

...