Rubyで、テーブルごとCSVに出力する処理をしたいんですが、フォーマットが思った通りになりません。
working_hourテーブルがあり、start_datetime,finish_datetimeというカラムを持っていて、それはuserテーブルにidで紐づいているというモデルにおいて、
class Admin::UsersController < Admin::Base require 'date' def index @working_hours = WorkingHour.includes(:user).all.order("id DESC") end 以下略
index.csv.ruby
require 'csv' require 'date' CSV.generate do |csv| csv_column_names = %w(ユーザー名 作業開始 作業終了) csv << csv_column_names @working_hours.each do |working_hour| csv_column_values = [ working_hour.user.name, working_hour.start_datetime, working_hour.finish_datetime ] csv << csv_column_values end end
というコードを書いたんですが、datetimeの方がどちらとも時:分というフォーマットでしか記録されません。
通常のviewファイルでは、initializersにtime_formatというファイルを作成し、
Time::DATE_FORMATS[:default] = "%Y/%m/%d %H:%M"
とすることで、うまく表示されましたが、index.csv.rubyというファイル内では、どうすれば期待通りのフォーマットにできるんでしょうか...?

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/10/11 06:14