国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > AJAX > 正文

rails制作rss feed代碼

2024-09-01 08:29:34
字體:
來源:轉載
供稿:網友
方法A:
就是你自己把RSS XML的格式拼湊好,輸出.并設置HTTP Header ,標記content-type為application/XML,常見的代碼:
代碼如下:
#Post_controller::feed()
def feed
require "rss"
articles = Article.find :all, :order => 'post_date DESC', :limit => 10
feed = RSS::Maker.make("2.0") do |maker|
maker.channel.title = "Gang of Technology"
maker.channel.description = "Gang of Technology site"
maker.channel.link = "http://up-u.com"

maker.items.do_sort = true

articles.each do |article|
item = maker.items.new_item
item.link = "http://www.***.com/archives/#{article.id}"
item.title = article.title
item.date = article.post_date
item.description = ""
end
end
send_data feed.to_s, :type => "application/rss+xml", :disposition =>
'inline'
end

方法B:
Rails Controller->Action 代碼:

代碼如下:
#Post_controller::feed
def feed
@posts=Post.find :all,:limit=>”id desc”
end

erb模板:

xml.instruct!
xml.rss(”version”=>”2.0″,
“xmlns:dc”=>”http://purl.org/dc/elements/1.1/”) do
xml.channel do
xml.title “renlu.xu 's blog”
xml.link(url_for(:action=>”start”,:only_path=>false))
xml.description “My life My love”
xml.language “zh_CN”
xml.ttl 60

for event in @posts do
xml.item do
xml.title(event.title)
xml.description(event.body)
xml.pubDate(event.created_at.to_s(:rfc822))
xml.guid(event.id)
xml.link(”http://…..#{event.id}”)
end
end
end
end

這種方法 網上很多文章到這一步就算完了,沒有下文了,其實不對。到這一步,訪問http://localhost:3000/post/feed仍然是出來的html的界面。g之,找到介紹:rails 2.0會根據不同的格式對模板進行渲染。這段代碼放在/views/post/feed.rhtml中是沒有用的,需要放在/views/post/feed.atom.builder中,并且需要通過http://localhost:3000/post/feed/123.atom(這里123沒有什么實際意義 隨便抓的一個),或是http://localhost:3000/post/feed?format=atom才能正確地按rss+xml輸出。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 灵璧县| 江山市| 叙永县| 武邑县| 武冈市| 松潘县| 栾川县| 阿瓦提县| 万宁市| 通化县| 康平县| 镇雄县| 柏乡县| 乌鲁木齐市| 讷河市| 哈尔滨市| 浦东新区| 三穗县| 丽水市| 九龙城区| 大足县| 恩平市| 青铜峡市| 武冈市| 祁连县| 宝应县| 莲花县| 罗源县| 锡林浩特市| 晋州市| 综艺| 嘉峪关市| 福泉市| 巢湖市| 会东县| 屯留县| 邯郸市| 平远县| 连江县| 库伦旗| 红桥区|