Es un código muy sencillo para generar un fichero OPML ( Outline Processor Markup Language) que permitirá exportar las feeds que tiene una determinada lista en L-exp y luego poderla importar en nuestro lector de feeds preferido.
El código es el siguiente:
En nuestro controlador
def create_opml
@data= Data.find_by_id(params[:id])
end
En nuestra vista
xml.instruct!
ml, :version=>"1.0" , :encoding=>"UTF-8"
xml.opml "version"=>"1.0" do
xml.head do
xml.title(@data.name)
xml.dateCreated(@data.created_at.strftime("%a, %d %b %Y %H:%M:%S %Z"))
xml.dateModified(@data.updated_at.strftime("%a, %d %b %Y %H:%M:%S %Z"))
xml.ownerName(@data.user.login)
end
xml.body do
for element in @data.elements
if not element.program.feed.blank? and not element.program.feed=='http://'
xml.outline "text" => element.program.name, "title" => element.program.name , "type" => "rss", "xmlUrl" => element.program.feed, "htmlUrl"=>element.program.web
end
end
end
end
Podéis utilizar un validador para comprobar que realmente cumple con las especificaciones OPML.
Acordaros de añadir un ruta en routes.rb
map.connect ‘/xml/opml/:id/export.opml’, :controller=>’xml’, :action=>’create_opml’
sobre esta configuración básica podéis hacer las variaciones que queráis. En mi caso necesito un id que referencia la lista con los datos. Pero esto es adaptable a vuestras necesidades.
Popularity: 1% [?]

