Календарь Google в приложении Rails 3 - PullRequest
0 голосов
/ 26 июля 2011

Я использую 0.5.5 версию gcal4ruby gem в своем приложении rails 3.0, и у меня, похоже, возникают проблемы при создании события.Я могу запустить службу и просто создать календарь, но я получаю следующую ошибку при попытке создать событие:

NoMethodError: undefined method `debug' for #<GCal4Ruby::Calendar: 
0x1036d8a68> 
        from /opt/local/lib/ruby/gems/1.8/gems/gcal4ruby-0.5.5/lib/gcal4ruby/ 
event.rb:242:in `to_xml' 
        from /opt/local/lib/ruby/gems/1.8/gems/gcal4ruby-0.5.5/lib/gcal4ruby/ 
event.rb:236:in `map' 
        from /opt/local/lib/ruby/gems/1.8/gems/gcal4ruby-0.5.5/lib/gcal4ruby/ 
event.rb:236:in `to_xml' 
        from /opt/local/lib/ruby/gems/1.8/gems/gcal4ruby-0.5.5/lib/gcal4ruby/ 
event.rb:230:in `create' 
        from /opt/local/lib/ruby/gems/1.8/gems/gdata4ruby-0.1.5/lib/ 
gdata4ruby/gdata_object.rb:155:in `save' 
        from /opt/local/lib/ruby/gems/1.8/gems/gcal4ruby-0.5.5/lib/gcal4ruby/ 
event.rb:225:in `save' 
        from (irb):92 

Я посмотрел код в этой строке, и кажется, что этопроверять, действительно ли service.debug = true, а не календарь, поэтому я не уверен, почему он выдает эту ошибку.Вот как я попал сюда в IRB, строка за строкой:

service = GCal4Ruby::Service.new 
service.authenticate(MY_GOOGLE_LOGIN, MY_GOOGLE_PASS) 
calendar = GCal4Ruby::Calendar.find(service, 'Test 2', :first) 
event = GCal4Ruby::Event.new(calendar) 
event.title = "test title" 
event.content = "test content" 
event.where = "my house" 
event.start = Time.now 
event.end = 2.hours.from_now 
event.all_day = false 
event.calendar = calendar[0] 
event.save 
NoMethodError: undefined method `debug' for #<GCal4Ruby::Calendar: 
0x1036d9990> 
        from /opt/local/lib/ruby/gems/1.8/gems/gcal4ruby-0.5.5/lib/gcal4ruby/ 
event.rb:242:in `to_xml' 
        from /opt/local/lib/ruby/gems/1.8/gems/gcal4ruby-0.5.5/lib/gcal4ruby/ 
event.rb:236:in `map' 
        from /opt/local/lib/ruby/gems/1.8/gems/gcal4ruby-0.5.5/lib/gcal4ruby/ 
event.rb:236:in `to_xml' 
        from /opt/local/lib/ruby/gems/1.8/gems/gcal4ruby-0.5.5/lib/gcal4ruby/ 
event.rb:230:in `create' 
        from /opt/local/lib/ruby/gems/1.8/gems/gdata4ruby-0.1.5/lib/ 
gdata4ruby/gdata_object.rb:155:in `save' 
        from /opt/local/lib/ruby/gems/1.8/gems/gcal4ruby-0.5.5/lib/gcal4ruby/ 
event.rb:225:in `save' 

Я должен что-то здесь упустить, но я не уверен, что именно.Очевидно, я получаю действительный объект календаря ... есть ли какой-то атрибут, который мне не хватает?

В качестве альтернативы, если у кого-то есть какие-либо другие предложения относительно того, что использовать для календарного решения, я бы хотел услышать его.По сути, мне нужно разрешить пользователям добавлять предопределенные события в календарь, которые могут повторяться, и в идеале я бы хотел, чтобы они могли экспортировать эти календари для использования в outlook, ical и т. Д. ... Есть ли способсделать это через Интернет?

Спасибо!

1 Ответ

1 голос
/ 27 июля 2011

ну, это раздражает, похоже, оно работает. это был вопрос изменения:

event = GCal4Ruby::Event.new(calendar)

до

event = GCal4Ruby::Event.new(service)

, хотя это прямо противоречит тому, что я прочитал в документации.

...