0

我正在尝试使用 Feedjira gem 为我正在使用的 RSS 阅读器显示图像。

我在模型中创建了方法:

饲料.rb

def self.feed_image(url)
    Feedjira::Feed.add_common_feed_element 'img'
    image = Feedjira::Feed.fetch_and_parse url
end

我试图在显示页面中显示它,所以我在控制器中调用它:

feeds_controller.rb

 def show
    @feed = Feed.find(params[:id])
    @title = @feed.feed_title
    @entries = @feed.entries
    @feed_image = Feed.feed_image(params[:id]) <-----
 end

我添加了参数,以便在显示页面上提取调用提要的 url。我尝试在视图中显示如下:

显示.html.erb

<h3><%= @feed.url %></h3>
<%= image_tag @feed_image %>  <---------
<% @entries.each do |t| %>
  <%= link_to t.title, t.url %></br>
  <small><%= t.published %></small>
  <%= sanitize t.summary %>
<% end %>

当我尝试调用它时出现以下错误:

NoMethodError (undefined method `request_uri' for #<URI::Generic /1>):
  app/models/feed.rb:19:in `feed_image'
  app/controllers/feeds_controller.rb:12:in `show'

我不确定它是否没有正确读取 URL 或者我到底哪里出错了。任何人都知道我哪里出错了。

4

0 回答 0