10

我试图弄清楚是否已经有一个插件可以与 iCal、我可以使用的 Google API 进行交互,或者我是否需要自己动手并自己编写。

如果有人知道我可以查看的好的资源可以帮助我实施,那也很好。

我是 RoR 的新手,我一直在尝试学习它。我最终决定开始使用我自己的应用程序,而不仅仅是阅读一本书。

在这件事上的任何帮助将不胜感激。

谢谢!

4

1 回答 1

15

查看用于 Rails的Google 日历 gem 。它允许您在 Rails 应用程序中显示用户的 Google 日历,并且他们有示例片段显示如何将事件导出到 Google 日历:

require 'googlecalendar'
g = GData.new
g.login('REPLACE_WITH_YOUR_MAIL@gmail.com', 'REPLACE_WITH_YOUR_PASSWORD')
event = { :title=>'title',
:content=>'content',
:author=>'pub.cog',
:email=>'pub.cog@gmail.com',
:where=>'Toulouse,France',
:startTime=>'2007-06-06T15:00:00.000Z',
:endTime=>'2007-06-06T17:00:00.000Z'}
g.new_event(event)

对于 iCal,使用iCalendar gem,然后您可以按如下方式导出事件:

require ‘icalendar’

class EventController < ApplicationController
  def export_events
    @event = Event.find(params[:id])
    @calendar = Icalendar::Calendar.new
    event = Icalendar::Event.new
    event.start = @event.dt_time.strftime(”%Y%m%dT%H%M%S”)
    event.end = @event.dt_time.strftime(”%Y%m%dT%H%M%S”)
    event.summary = @event.summary
    event.description = @event.description
    event.location = @event.location
    @calendar.add event
    @calendar.publish
    headers['Content-Type'] = “text/calendar; charset=UTF-8″
    render_without_layout :text => @calendar.to_ical
  end
end
于 2009-01-29T20:56:38.393 回答