2010-04-18 26 views

Respuesta

15

Dónde colocar las clases definidas por el usuario en los rieles? Para lib directorio


a su pregunta específica clase RssReader.

El mejor código escrito en esa página está en el comentario de Veez (30.7.2008). código final debería tener este aspecto (no probado)

# 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 

En controlador

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

En vista (reescrito desde comentario en HAML a ERB)

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

reloj RSS::Parser.parse parámetros para obtener más detalles.


creo, lector de feeds RSS debe ser Modelo en rieles. El lector de fuentes RSS muy simple está descrito por Travis on Rails (lea los comentarios, no necesita usar el método abierto).

Cuestiones relacionadas