Проблема пространства имен Ruby on Rails с iCalendar - PullRequest
1 голос
/ 04 ноября 2010

Я разрабатываю веб-приложение для календаря для моей компании, используя ruby ​​1.8.7 и рельсы 2.3.8. Естественно, есть модели RoR с именами «Календарь» и «Событие».

для отправки событий календаря в другие приложения (Microsoft Outlook & заметки лотоса) я интегрируюсь со стандартом iCalendar & ruby библиотека. http://icalendar.rubyforge.org/ но эта библиотека содержит классы под названием "Календарь" и "Событие"

теперь мое приложение получает подобные ошибки, когда оно пытается использовать поиск активной записи - @calendar = Calendar.find (id):

NoMethodError (неопределенный метод find' for **Icalendar::Calendar:Class**): app/controllers/foos_controller.rb:184:in sendEmailDialogForm ' C: /Ruby/lib/ruby/1.8/webrick/httpserver.rb: 104: в "сервисе"

есть ли способ сделать:

@ calendar = ActiveRecord :: Base.Calendar.find (id) ??

  or 

@ calendar = appname.Calendar.find (id)

  or

@ calendar = this.Calendar.find (id)

лениво пытается избежать использования модуля для указания пространства имен или переименования моего моделей.

1 Ответ

2 голосов
/ 04 ноября 2010

Я думаю, у вас где-то есть include Icalendar. Попробуйте извлечь это и позвонить в эту библиотеку, используя Icalendar::Calendar.new(...). Это должно позаботиться о конфликтах пространства имен.

...