Как мне добавить условие "НЕ НУЛЬ" к поиску Thinking Sphinx
Я использую Thinking Sphinx для полнотекстового поиска, следуя этому видео.
Я хотел бы сделать следующее:
@articles = Article.search(params[:search], :conditions => "published_at IS NOT NULL", :order => :created_at)
Проблема в том, что это не работает. Кажется, что метод поиска принимает только те условия, которые являются хэшем. Я пробовал несколько способов, но я не представляю, как я могу представить "ключ_ОТОМ НЕ НУЛЕЙ" как хеш...
1 ответ
Было дано решение в Railscasts
Если вы хотите, чтобы * все * результаты для этой модели отфильтровывали записи, в которых ключ_публикованного_НУТРИ НУЛЬ, добавьте 'где "опубликованный_НЕТ НУЛЬ' 'в свой блок define_index.
Если это только иногда, добавьте publ_at в качестве атрибута, и тогда sphinx должен хранить нулевые даты как 0, так что вы можете фильтровать, используя: без => {:publ_at => 0}
Второе решение было то, что мне было нужно.