Tag: Rails3/RSSフィードの生成

目次

参考情報

概要

  • 独自にrssを生成しなくても組み込みで作る方法がある。
  • コントローラーで、rssレスポンスを返し、viewでxxx.rss.builderを使う。
  • URLは、xxx.rss になる。

コントローラー

  • controllers/posts_controller.rb
    def feed
        @posts = Post.all(:select => "title, author, id, content, posted_at", :order => "posted_at DESC", :limit => 20) 
    
        respond_to do |format|
          format.html
          format.rss { render :layout => false } #index.rss.builder
        end
    end
    

ビュー

  • views/posts/feed.rss.builder
    xml.instruct! :xml, :version => "1.0" 
    xml.rss :version => "2.0" do
      xml.channel do
        xml.title "Your Blog Title"
        xml.description "A blog about software and chocolate"
        xml.link posts_url
    
        for post in @posts
          xml.item do
            xml.title post.title
            xml.description post.content
            xml.pubDate post.posted_at.to_s(:rfc822)
            xml.link post_url(post)
            xml.guid post_url(post)
          end
        end
      end
    end
    
  • URL:は例えば、http://localhost:3000/posts/feeds.rss のようになる。

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-04-13 (水) 16:47:34