0

Products と User has input を使用する式を使用して、検索結果を並べ替えようとしています。つまり、Products と current_user の両方のデータを使用する方程式があります。方程式から得た数で検索結果を並べ替えられるようにしたいと考えています。私はこれを始めたとしてもかなり迷っています。誰かが同様のことをしたことがありますか、またはソート/順序を最適に処理する方法について何か考えがありますか? 私の理解では、「順序」は通常、メソッドではなく、SQL データベース内の実際の列を並べ替えるために使用されます。

私はもともと current_user をモデルに渡す必要があると考えていました。それがベスト プラクティスではないことは承知していますが、Sunspot では、モデルにカスタム フィールドを作成し、それらのフィールドで並べ替えることができます。残念ながら、太陽黒点は検索して並べ替えるフィールドにインデックスを付ける必要があるため、これは機能しません。

私は現在 Sunspot を使用していますが、変更が必要な場合でも引き続き使用したいと考えています。ページネーションも使用しています。

4

1 に答える 1

0

SQL で複雑な方程式を計算することはできません。簡単な計算に制限されています。

可能な解決策:

  • 取得する結果の数によっては、ルビの並べ替え方法を使用できる場合もあります。
  • 方程式の結果を計算し、新しい列またはテーブルに保存します

あなたの問題は「マッチング」に関連している可能性があります。

于 2011-08-27T09:38:42.000 に答える