web-dev-qa-db-ja.com

複数のファイブスター評価フィールドを平均に結合します

私は評価サイトを構築し、ビューを使用して最高評価(Fivestar + Voting-api)のコンテンツを表示しています。これが私の見解です:

http://dl.dropbox.com/u/2188345/views-sorting.png

ご覧のとおり、適切に設定されていて、並べ替えが可能です。ただし、最後の列を追加して、ノードごとにこれら3つを合わせた平均スコアを表示する必要があります。私は最初にビューテンプレートを作成することでこれを簡単に達成できると思いましたが、部分的には問題ありませんでしたが、ソートは期待どおりに機能しませんでした(実際のソートが行われる前ではなく、オンザフライで値が合計されたためです)。

これら3つのリレーションの値を、書き換えまたはその他の方法で組み合わせるスマートな方法はありますか?

4
red

私は表の評価の数値を使用してこれをなんとか解決しましたが、星の量を表示するように表示を書き換えました-この方法drupalはそれを並べ替える方法を理解し、ユーザーは星を見る値。

時には最も簡単な方法が最善です:)

1
red

計算フィールド はここで役に立ちますか? 3つの評価フィールドを異なる出力で複製(およびそれらを非表示)する必要がある場合がありますが、その結果に対していくつかの計算を実行できるはずです。

3
Malks

それはトリッキーな問題です。良い答えはありません。アイデアだけです。「最終的な」評価を設定する必要があるかもしれません。

次に、ルールを使用して、個々の評価をそれぞれ最終的な評価に追加します。投票数はオフになりますが、平均評価は機能するはずです。

2
uwe