9

このビデオに従って、Thinking Sphinx を全文検索に使用しています。

私は次のことをしたいと思います:

@articles = Article.search(params[:search], :conditions => "published_at IS NOT NULL", :order => :created_at)

問題は、これが機能しないことです。検索方法はハッシュである条件のみを受け入れるようです。いくつかの方法を試しましたが、「published_at IS NOT NULL」をハッシュとして表現する方法がわかりません...

4

1 に答える 1

24

Railscastsで解決策が与えられました

そのモデルの*すべての*結果でpublished_atがNULLのレコードを除外する場合は、define_indexブロックに'where "published_at ISNOTNULL"'を追加します。

たまにしか発生しない場合は、published_atを属性として追加すると、sphinxはnullの日付を0として保存する必要があるため、:without => {:published_at=>0}を使用してフィルタリングできます。

2番目の解決策は私が必要としていたものでした。

于 2008-11-03T14:11:46.120 に答える