我从db中选择了事件。 我需要克隆每个元素30次,并设置elem.shedule不同的日期(每天在当前月-2013-04-01 .. 2013-04-30)。无法添加修改过的元素到Ruby中的数组中
这是我的代码(“shedule”字段是日期):
daily_events = Events.All
repeated_events = []
for event in(daily_events)
for day in(1..date.end_of_month.day)
repeat_event = event
repeat_event.shedule = Date.new(date.year, date.month, day)
repeated_events << repeat_event
end
end
但作为结果我有每个ELEM无处不在30次同上个月一天日期(2013年4月30日)
的如何解决它?
如果我设置的repeated_events+=repeat_event
代替repeated_events << repeat_event
我有类型错误在EventsController#指数 不能转换事件到阵列(事件#to_ary给NilClass)
我想是因为我克隆只是元素的引用,而不是元素的内容。什么是解决它的方法?
你得到的输出显示在这里,说出你想要的样子是什么?这将有助于快速解决 – 2013-04-04 14:46:35
如果我设置DR + = repeat_event代替dr.push(repeat_event) 我有类型错误在EventsController#指数 不能转换事件到阵列(事件#to_ary给NilClass) – Gabi 2013-04-04 14:49:10
我需要有在新阵列'博士'相同的对象,但具有不同的日期(2013-04-01 .. 2013-04-30)。但我有30个同日期的对象(2013-04-30) – Gabi 2013-04-04 14:51:24