• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    rails制作rss feed代码
    方法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输出。
    上一篇:php ajax网站浏览统计功能的简单实现第1/2页
    下一篇:一句话解决AJAX中文乱码问题[推荐]
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    rails制作rss feed代码 rails,制作,rss,feed,代码,rails,