2010-04-18 30 views

回答

15

何處將用戶定義的類放入Rails中?爲了的lib目錄


你的具體RssReader類的問題。

寫在該頁面上的最佳代碼是來自Veez(30.7.2008)的評論。最終的代碼應該是這樣的(未測試)

# lib/rss_reader.rb 
require 'rss/2.0' 
require 'open-uri' 

class RssReader 

    def self.posts_for(feed_url, length=2, perform_validation=false) 
    posts = [] 
    open(feed_url) do |rss| 
     posts = RSS::Parser.parse(rss, perform_validation).items 
    end 
    posts[0..length - 1] if posts.size > length 
    end 

在控制器

# for last five messages 
require 'rss_reader' 
def some_action 
    @posts = RssReader.posts_for(rss_url, 5, false) 
end 

在視圖(HAML從評論改寫爲ERB)

<ul> 
    <% @posts.each do |post| %> 
    <li><%= post.title %> - <%= post.description %></li> 
    <% end %> 
</ul> 

關注RSS::Parser.parse參數的詳細信息。


我認爲,RSS閱讀器應該是模型的Rails。非常簡單的RSS閱讀器由Travis on Rails描述(閱讀評論,你不需要使用開放的方法)。