iCalendar gem を使用してiCal ファイルからイベントをインポートする rake タスクのセットアップがあります。iCal には、標準の .ics フィールドに加えて、いくつかのカスタム フィールドも含まれています。それらの値もインポートすることは可能ですか?
問題なく処理できるiCalファイルの次のような行:
DESCRIPTION:The lions and tigers are on exhibit.
この問題は、次のような行で発生します。
X-TRUMBA-CUSTOMFIELD;NAME="Event Location";ID=10831;TYPE=SingleLine:Lower Level\,
across from the Stars and Stripes Cafe
カスタムの「イベントの場所」フィールドはどのように参照すればよいですか?
これまでのコードは次のとおりです。
desc "Import events from Smithsonian"
task :smithsonian => :environment do
url = "http://www.trumba.com/calendars/smithsonian-events.ics"
cals = Icalendar.parse(open(url))
cal = cals.first
cal.events.each do |event|
e = TempEvent.find_or_create_by_name(
:name => event.summary.to_s,
:description => event.description.to_s,
:starts_at => event.dtstart.to_s,
:ends_at => event.dtend.to_s,
:tag_list => event.categories,
:url => event.url,
:facebook_url => "https://www.facebook.com/Smithsonian",
:twitter_url => "https://twitter.com/smithsonian",
:venue_name => "Smithsonian",
:external_id => event.uid.to_s,
:source => "Smithsonian iCal import",
:published => true)
end
end