首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未定义的方法`start=的gcal4ruby

未定义的方法`start=的gcal4ruby
EN

Stack Overflow用户
提问于 2012-07-11 08:03:25
回答 2查看 168关注 0票数 0

我正在尝试使用gcal4ruby将事件添加到谷歌日历中。当我运行我的代码时,我得到这个错误:

代码语言:javascript
复制
undefined method `start=' for #<GCal4Ruby::Event:0x00000102bb47b8>

下面是我的代码:

代码语言:javascript
复制
service = GCal4Ruby::Service.new
service.authenticate("username", "password")
cal = GCal4Ruby::Calendar.find(service, "calendarname", :first)
event = GCal4Ruby::Event.new(cal)
event.title = "Soccer Game"
event.start = Time.parse("12-06-2009 at 12:30 PM")
event.end = Time.parse("12-06-2009 at 1:30 PM")
event.where = "Merry Playfields"
event.save  

错误发生在"event.start = ...“行上。

这让我感到困惑,因为这段代码是从文档中直接复制过来的。

编辑:打开插件的实际.rb文件后,发现文档根本就是错的。方法event.start和event.end应为event.start_time和event.end_time。但是现在我得到了这个错误:

代码语言:javascript
复制
undefined method `editable' for nil:NilClass

在"event.save“行。有没有人使用过这个插件,并且对此有所了解?或者可以推荐一个使用google日历的库,它有更好的文档?;-)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-07-11 08:18:11

尝试将事件分配更改为

代码语言:javascript
复制
event = GCal4Ruby::Event.new(service)

如果这不起作用,我会做一个gem which gcal4ruby (或者不管gem的名字是什么),并查看那里的代码。因为根据source codestart方法是绝对存在的。

票数 1
EN

Stack Overflow用户

发布于 2012-12-14 03:39:11

实际上,我也遇到了同样的错误。您的编辑和Dty的回答都帮助我弄清楚了这一点。这是我的解决方案。

代码语言:javascript
复制
event = Event.new(service, {
    :calendar => cal, 
    :title => "Event on "+s.start_date.strftime('%D'), 
    :start_time => s.start_date, 
    :end_time => s.end_date, 
    :where => "www.example.com"})

event.save
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11423747

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档