概要
現在、chartkickを使った円グラフの制作しています。
真ん中に、各項目の足した合計日数を計算して表示させたいです。Rubyであれば、なんなく計算はできるのですが、railsの記述場所や書き方が分かりません…
初歩的な問題かとは思いますが、教えていただけると助かります。
各ファイル
roods_controller.rb
:name, 各項目の名前
:period, 日数
def index @rooads = Rooad.includes(:user).order(created_at: :desc).page(params[:page]).per(5) if user_signed_in? render :index else redirect_to root_path end end private def rooad_params params.require(:rooad).permit(:status_id, :title, :detail, repetitions_attributes: [:id, :name, :period, :memo, :_destroy]).merge(user_id: current_user.id) end
index.rb
<%# グラフ %> <%= pie_chart rooad.repetitions.group(:name).sum(:period), library: {title: {text: "合計日数<br> (〜日)"}} %>
質問の意味がよく分からなかったのですが、
・円グラフの表示 → もうできてる
・合計日数の計算 → もうできてる
・円グラフの中央に合計日数を表示する → できてないのでやり方が知りたい
という解釈で合ってますか?
その通りです。
あれから、色々調べて簡易的に表示することはできました。
<%= pie_chart rooad.repetitions.group(:name).sum(:period), library: {title: {text: "合計日数<br> 【#{rooad.repetitions.all.sum(:period)}日】"}} %>
ただ、合計日数を「100日→3ヶ月と10日」みたいな感じでしたいので、計算方法をどこかに記述して呼び出したいと考えてます。
あなたの回答
tips
プレビュー