0

Ruby on Rails の ActiveRecord クエリから取得したデータをグラフ化しようとしています。JavaScript チャート ライブラリ (amcharts) は、次の形式のデータを受け入れます。

 var chartData = [{
            date: new Date(2012, 0, 1),
            products: 227
        }, {
            date: new Date(2012, 0, 2),
            products: 371
        }]

YYYY-MM-DD 形式の日付文字列を解析し、以下のクエリから JavaScript Date オブジェクトを作成するにはどうすればよいですか? このチュートリアルを見たことがありますが、json 出力を正しく解析する関数を作成する方法がわかりません。

  create_table :products do |t|
        t.date :date
  end

 <% a = Product.select("date(date) as date, count(id) as products").group("date(date)").to_a.to_json %>
4

1 に答える 1

0

これが私のために働いた答えです:

 function parseDate(dateString) {
     // split the string get each field
     var dateArray = dateString.split("-");
     // now lets create a new Date instance, using year, month and day as parameters
     // month count starts with 0, so we have to convert the month number
     var date = new Date(Number(dateArray[0]), Number(dateArray[1]) - 1, Number(dateArray[2]));
     return date;
 }

     var array = <%= a.to_json %>;

     var array2 = [];

     array.forEach(function(element){ 
       array2.push({date: parseDate(element.date), products: element.products});
     });
于 2012-07-04T12:53:31.023 に答える