饲料生成的ri_cal问题

时间:2012-02-13 00:24:51

标签: ruby-on-rails ruby icalendar

我有以下设置来生成iCal供稿,当我们的数字标牌盒在http://foo/rooms/foo/feed.ics订阅供稿时,他们会提取事件信息,但不要停止显示该事件。我相信这是因为下面的函数生成的实际文件将dtend放在dtstart之前。我能做些什么来解决这个问题吗?

def feed
  @room = Room.find(params[:id])
  @events = @room.events
  respond_to do |format|
    if @room.valid?
      format.ics { render :text => self.generate_ical }
    else
      format.ics { render :nothing => true, :status => :forbidden}
    end
  end
end

def generate_ical
  RiCal.Calendar do |ical|
    ical.add_x_property 'X-WR-CALNAME',@room.name
    @events.each do |e|
      ical.event do |event|
        event.dtstart = e.start
        event.dtend = e.end
        event.summary = e.summary
      end
    end
  end.export
end

1 个答案:

答案 0 :(得分:2)

问题在于饲料阅读器,而不是饲料生成器。 iCal标准不会对iCalendar对象中的属性进行任何排序。