Thinking Sphinxで検索しようとしている商品モデルがあります。モデルにはstatusという属性があり、指定した日付にアクティブ、非アクティブ、アクティブのいずれかを指定できます。Thinking Sphinxでの検索条件の計算フィールドのインデックス付け
検索結果を有効な製品に限定したいと考えています。私。日付の間アクティブな状態またはアクティブな状態を持ち、現在の時刻はそれらの日付の間です。
私はこれを実装する方法についての提案を探しています。私はこのロジックを計算するモデルにブール値のメソッドを入れることを考えましたが、これはSphinxによってインデックス可能とは思われません。
私はデータベースサーバーとしてMySQLを使用しています。
誰も明るいアイデアはありますか?
これを解決する方法の1つは、is_activeという追加のフィールドを作成し、毎晩cronジョブを実行させ、ステータスがアクティブであるか、または現在の時刻が指定された日付の間である場合にtrueに設定することですそれ以外の場合はfalseに設定します。アップデートでステータスが変更された場合、個々の製品に同じことを行うために、モデルのsaveコマンドをオーバーライドする必要もあると思います。 – Caps