0

モデルに次のコードがあります。

def getFormattedAverages

   averages = Array.new();
   self.items.each do |i|

      x = self.responses.average(:x,:conditions=>['item_id = ?',i.id])
      if x.nil?
        x = 2000
      else
        x = x.to_i
      end
      y = self.responses.average(:y,:conditions=>['item_id = ?',i.id]).to_i
      if y.nil?
        y = "*"
      end
      averages.push([[x,y]])

    end

   return averages

end

私が持っているビューでは:

var dataseries = <%=@question.getFormattedAverages%>;

開発マシンでは、グラフ化関数に渡す必要のある形式でデータを取得します。レンダリングされたページで「ソースを表示」すると、次のようになります。

var dataseries = [[[31、34]]、[[45、33]]、[[34、23]]、[[10、27]]、[[21、37]]];

しかし、本番サーバーで実行すると、次のようになります-

var dataseries = -6745-798571322000010791-2270-18;

開発サーバーと本番サーバーのxデータとyデータが異なることに注意してください。重要なのは、すべての角かっことコンマが削除されているということです。あなたが提供できるどんな助けでも大いに感謝されるでしょう-これは本当に私を困惑させました!

4

1 に答える 1

0

私はこの答えを見つけました。

ビューのコードを変更して読み取ります

var dataseries = <%=raw @question.getFormattedAverages.to_json%>;

うまくいくようです!

于 2012-10-04T01:45:13.040 に答える