Module: RSS::RSS09
Relationships & Source Files | |
Extension / Inclusion / Inheritance Descendants | |
Included In:
ITunesChannelModel::ITunesCategory,
ITunesChannelModel::ITunesImage,
ITunesChannelModel::ITunesOwner,
ITunesItemModel::ITunesDuration,
Rss,
Rss::Channel,
Rss::Channel::Cloud,
Rss::Channel::Image,
Rss::Channel::Item,
Rss::Channel::Item::Category,
Rss::Channel::Item::Enclosure,
Rss::Channel::Item::Guid,
Rss::Channel::Item::Source,
Rss::Channel::SkipDays,
Rss::Channel::SkipDays::Day,
Rss::Channel::SkipHours,
Rss::Channel::SkipHours::Hour,
Rss::Channel::TextInput,
TrackBackModel20::TrackBackAbout,
TrackBackModel20::TrackBackPing
| |
Defined in: | lib/rss/0.9.rb |
Overview
RSS 0.9 support
::RSS has three different versions. This module contains support for version 0.9.1.
Producing RSS 0.9
Producing our own ::RSS feeds is easy as well. Let's make a very basic feed:
require "rss"
rss = RSS::Maker.make("0.91") do |maker|
maker.channel.language = "en"
maker.channel. = "matz"
maker.channel.updated = Time.now.to_s
maker.channel.link = "http://www.ruby-lang.org/en/feeds/news.rss"
maker.channel.title = "Example Feed"
maker.channel.description = "A longer description of my feed."
maker.image.url = "http://www.ruby-lang.org/images/logo.gif"
maker.image.title = "An image"
maker.items.new_item do |item|
item.link = "http://www.ruby-lang.org/en/news/2010/12/25/ruby-1-9-2-p136-is-released/"
item.title = "Ruby 1.9.2-p136 is released"
item.updated = Time.now.to_s
end
end
puts rss
As you can see, this is a very Builder-like DSL. This code will spit out an ::RSS 0.9 feed with one item. If we needed a second item, we'd make another block with maker.items.new_item and build a second one.
Constant Summary
-
ELEMENTS =
# File 'lib/rss/0.9.rb', line 41[]
-
NSPOOL =
# File 'lib/rss/0.9.rb', line 40{}
Class Method Summary
Class Method Details
.append_features(klass)
[ GitHub ]# File 'lib/rss/0.9.rb', line 43
def self.append_features(klass) super klass.install_must_call_validator('', "") end