Ruby on rails RSS源条目-编码::兼容性错误不兼容的字符编码:ASCII-8BIT和UTF-8

Ruby on rails RSS源条目-编码::兼容性错误不兼容的字符编码:ASCII-8BIT和UTF-8,ruby-on-rails,encoding,utf-8,rss,rss-reader,Ruby On Rails,Encoding,Utf 8,Rss,Rss Reader,我目前正在开发一个RSS源,它已经运行了一段时间,但现在有一个编码问题。在尝试了许多解决方案都没有成功之后,我推断我可能与提要解析器有问题 错误从索引页开始: ActionView::Template::Error (incompatible character encodings: ASCII-8BIT and UTF-8): 11: 12: <div class="entry_wrapper"> 13: <div class="

我目前正在开发一个RSS源,它已经运行了一段时间,但现在有一个编码问题。在尝试了许多解决方案都没有成功之后,我推断我可能与提要解析器有问题

错误从索引页开始:

ActionView::Template::Error (incompatible character encodings: ASCII-8BIT and UTF-8):
11: 
12:           <div class="entry_wrapper">
13:             <div class="entry_box">
14:               <% feed.entries.each do |entry| %>
15:                 <p class="entry_title"><%= sanitize link_to entry.title, entry.url %></p>
16: 
17: 
  app/models/feed.rb:6:in `entries'
  app/views/feeds/index.html.erb:14:in `block in _app_views_feeds_index_html_erb__2672739530113604393_70126099705280'
  app/views/feeds/index.html.erb:5:in     `_app_views_feeds_index_html_erb__2672739530113604393_70126099705280'
<% @feeds.each do |feed| %>  # Line 5 here
      <p class="feed_url">
        <%= link_to feed.url, feed %>
        <%= link_to "Edit", edit_feed_path(feed), class: "blue" %> 
        <%= link_to "Delete", feed_path(feed), method: :delete, data: { confirm: 'Are you sure you want to delete this feed url?' }, class: "blue" %>
      </p>

      <div class="entry_wrapper">
        <div class="entry_box">
          <% feed.entries.each do |entry| %>
            <p class="entry_title"><%= sanitize link_to entry.title, entry.url %></p>
我尝试在模型中“强制”编码,但我认为我的编码技能在创建方法方面有点欠缺。这是我最初为Feed#索引中使用的Feed创建的条目模型

类提要
因为这个模型以前是有效的,所以我不确定发生了什么。我确实花了几个月的时间使用这个应用程序,所以我不知道Feedjirra是否有任何变化。任何帮助都将不胜感激。

您看过吗?
2.1.1 :001 > g = Feed.last
  Feed Load (0.1ms)  SELECT  "feeds".* FROM "feeds"   ORDER BY "feeds"."id" DESC LIMIT 1
 => #<Feed id: 9, name: nil, created_at: "2016-01-18 05:01:54", updated_at:   "2016-01-18 05:01:54", url: "http://feeds.feedburner.com/MattsTravelSite"> 
2.1.1 :002 > g.entries
Encoding::CompatibilityError: incompatible character encodings: ASCII-8BIT and UTF-8
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/oga-2.0.0/lib/oga/xml/entities.rb:77:in `gsub'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/oga-2.0.0/lib/oga/xml/entities.rb:77:in `decode'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/oga-2.0.0/lib/oga/entity_decoder.rb:14:in `decode'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/oga-2.0.0/lib/oga/entity_decoder.rb:5:in `try_decode'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/oga-2.0.0/lib/oga/xml/sax_parser.rb:151:in `on_text'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/oga-2.0.0/lib/oga/xml/parser.rb:541:in `_rule_33'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/oga-2.0.0/lib/oga/xml/parser.rb:239:in `block in each_token'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/oga-2.0.0/lib/oga/xml/lexer.rb:237:in `call'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/oga-2.0.0/lib/oga/xml/lexer.rb:237:in `add_token'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/oga-2.0.0/lib/oga/xml/lexer.rb:439:in `on_element_end'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/oga-2.0.0/lib/oga/xml/lexer.rb:190:in `advance_native'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/oga-2.0.0/lib/oga/xml/lexer.rb:190:in `block in advance'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/oga-2.0.0/lib/oga/xml/lexer.rb:137:in `read_data'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/oga-2.0.0/lib/oga/xml/lexer.rb:189:in `advance'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/oga-2.0.0/lib/oga/xml/parser.rb:236:in `each_token'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/oga-2.0.0/lib/oga/xml/parser.rb:269:in `parse'
... 20 levels...
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/activesupport-4.1.7/lib/active_support/dependencies.rb:241:in `load'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/activesupport-4.1.7/lib/active_support/dependencies.rb:241:in `block in load'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/activesupport-4.1.7/lib/active_support/dependencies.rb:232:in `load_dependency'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/activesupport-4.1.7/lib/active_support/dependencies.rb:241:in `load'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/spring-1.3.6/lib/spring/commands/rails.rb:6:in `call'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/spring-1.3.6/lib/spring/command_wrapper.rb:38:in `call'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/spring-1.3.6/lib/spring/application.rb:183:in `block in serve'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/spring-1.3.6/lib/spring/application.rb:156:in `fork'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/spring-1.3.6/lib/spring/application.rb:156:in `serve'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/spring-1.3.6/lib/spring/application.rb:131:in `block in run'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/spring-1.3.6/lib/spring/application.rb:125:in `loop'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/spring-1.3.6/lib/spring/application.rb:125:in `run'
from /Users/danieluribe/.rvm/gems/ruby-2.1.1/gems/spring-1.3.6/lib/spring/application/boot.rb:18:in `<top (required)>'
from /Users/danieluribe/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /Users/danieluribe/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
This document was successfully checked as well-formed XML!
Result: Passed, 1 warning(s)
Address:    
http://feeds.feedburner.com/MattsTravelSite
Encoding:   utf-8   
Doctype:    XML 
Root Element:   feed
Root Namespace: http://www.w3.org/2005/Atom
class Feed < ActiveRecord::Base
  has_many :items

  def entries(num = 3)
    Feedjira::Feed.add_common_feed_entry_element("img")
    feed = Feedjira::Feed.fetch_and_parse(url)
    feed.entries.take(num)

    # add_items(feed.entries)  # Saving items to database
  end
....