2021年04月04日に参加
学習履歴詳細
Procオブジェクトを使い, 指定された期間における各カラムの値の配列を生成する
アプリ制作
実現したいこと
体調グラフ機能
各カラムに1つボタンを作成し, ボタンのON/OFFでカラムの表示/非表示を切り替えられるようにする。
どのように実現するか
指定された期間における各カラムの値の配列を生成し, Viewに渡す。
本日はrails consoleで考えたコードが動作するのかを試した。
# Diaryレコードをグループ化 records = User.diaries.group_by_week(week_start: :mon) { |n| n.diary_date } # 期間内のDiaryレコードを1つずつ取り出し, カラムの値を配列で返す get_column_value_proc = Proc.new do |column, records| records.map do |record| record.send(column) end end #=> #<Proc:0x00007ff445dba088@(irb):47> # Y軸の値のハッシュ(キー: カラム, バリュー: カラムの値の配列)を返す columns.each do |column| y_axis_value[column] = get_column_value_proc.call(column, records[date_begin]) end #=> [:activity, :mood, :appetite] y_axis_value #=> {:activity=>[1, -1, 2, 2, 2, -1, 2], :mood=>[2, -2, -2, 1, 0, 2, 0], :appetite=>[2, 2, -2, 2, 2, 1, 1]}
プロを目指す人のためのRuby入門
- 11章 トラブルシューティング等
- 12章 組み込み定数, 起動時引数等
Ruby
Rails
2019年10月21日(月)
3.0時間