jyl*_*li7 2 ruby time datetime utc
我正在使用任务和电子表格gem将excel电子表格读入我的数据库.我正在读的其中一个栏目是"start_time".为此,我正在形成一个值数组,然后逐个传递每个数组值.
  cnum_array = [] # for start times
  sheet1.each 3 do |row|
    unless row[9].blank?
      time = Time.parse(row[9])
      cnum_array << time.utc
    end 
  end
  count = 0
  for course in Course.all
    course.update_attribute :start_time, cnum_array[count]
    count += 1
  end
这似乎工作正常.如果我在最后一个循环中插入"puts course.start_time"语句,则会打印出正确的时间.像这样:
  count = 0
  for course in Course.all
    course.update_attribute :start_time, cnum_array[count]
    puts course.start_time
    count += 1
  end
这给了我正确的时间,例如"2012-01-23 15:30:00".
但是当我稍后查看课程时(例如通过我的控制台的Course.find(1).start_time),它给了我"2000-01-01 15:20:00".所以一天中的时间是正确的,但这一天本身可以追溯到2000-01-01.
有谁知道为什么会这样,我怎么能解决它?谢谢!