1

次のコードがあります。

<script>


        var target = <%= @main.sum(&:target) %>;
        var forecast = <%= @main.sum(&:forecast) %>;
        var achieved = <%= @main.sum(&:achieved) %>;

    var pieData = [
            {
                value: target,
                color:"#ed1c24"
            },
            {
                value : achieved,
                color : "#000"
            }


        ];

        var opt = {
            scaleFontFamily : "'Trebuchet'",
            segmentStrokeColor : "#fff",

        }

そして、円グラフで目標がどの程度達成されたかを確認する必要があります。achievedコードは機能します。図から図targetを差し引く方法が必要です

4

1 に答える 1

0

これがコードの重要な部分である場合は、これをモデルに挿入できます。コードは次のようになります。

model.rb

def difference
  self.sum(&:target) - self.sum(&:acheived)
end

js:

var difference = @main.difference;

これを JavaScript に入れることもできますが、これはビュー内にあるため、計算をモデルに保持しておくと、アプリケーション ロジック内で何が起こっているかを 1 つのファイル内である程度可視化できます。

于 2013-10-10T20:48:48.983 に答える