0

現在、ブログから最初のレコードを取得する次のコードがあります。

def blogFeed
  begin
    rss = SimpleRSS.parse(open('http://blog.example.co.uk/feed/').read)
    if rss.items.first.title.length > 80 then
      title = "#{ rss.items.first.title[0..70]} ..."
    else
      title = rss.items.first.title
    end
    date = rss.items.first.pubDate.strftime("%d %B %Y")
    @links = { :title => title, :url => rss.items.first.link, :date => date }

  rescue OpenURI::HTTPError
    @links = { :title => "", :url => "#", :date => "" }
  end
  return @links
end

これは私の見解でそれを参照する方法です:

%span.feed
  %span.bold 
    LATEST BLOG:

  - blog = blogFeed
  - if blog[:title] != ""
    = raw blog[:title]
    %a{ :href => "#{ raw blog[:url] }" } READ MORE
  - else
    %a{ :href => "/blog" } CLICK HERE TO VISIT OUR BLOG

これは問題なく動作しますが、最初のブログ投稿だけでなく、それ以上のものを使用する必要があります。すべての投稿を反復処理する方法はありますか?

4

1 に答える 1

0

これを私の見解に入れるだけで終わった:

- @rss = SimpleRSS.parse open('http://blog.example.co.uk/feed/')
%p
  Latest blog articles:

  %ul.about
    - @rss.items.first(2).each do |i|
      %li.blog
        %a{:href => "http://blog.example.co.uk/#{i.link}"} #{if i.title.length > 80 then "#{ i.title[0..65]} ..." else "#{i.title}" end}
于 2013-07-22T16:26:16.580 に答える