国产探花免费观看_亚洲丰满少妇自慰呻吟_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輸出。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 会宁县| 通州市| 夏津县| 波密县| 金堂县| 阜康市| 房产| 大埔县| 南昌市| 碌曲县| 兴和县| 郧西县| 嫩江县| 凤翔县| 广东省| 湘潭县| 正安县| 海阳市| 平遥县| 泰兴市| 凤冈县| 浦江县| 沈丘县| 安宁市| 东光县| 东乡县| 南川市| 榆林市| 都安| 准格尔旗| 抚宁县| 延长县| 宜阳县| 桐城市| 金阳县| 固镇县| 千阳县| 安宁市| 保康县| 雷山县| 西吉县|