Ruby on rails 带虾的铁轨4:罐装';无法写入未知属性'info'`

Ruby on rails 带虾的铁轨4:罐装';无法写入未知属性'info'`,ruby-on-rails,prawn,Ruby On Rails,Prawn,我有一个完全相同的问题: 然而,这个问题没有答案,只是他重新安装了对虾。 我卸载了一个gem-prawn,然后安装了一个bundle来重新安装gem,但是仍然出现了错误 唯一改变的是,在运行rails s时,现在我收到以下警告: C:/Ruby21/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action\u dispatch/http/mime\u type.rb:163:警告:已初始化常量mime:PDF C:/Ruby21/lib/ruby/

我有一个完全相同的问题:

然而,这个问题没有答案,只是他重新安装了对虾。 我卸载了一个gem-prawn,然后安装了一个bundle来重新安装gem,但是仍然出现了错误

唯一改变的是,在运行rails s时,现在我收到以下警告:

C:/Ruby21/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action\u dispatch/http/mime\u type.rb:163:警告:已初始化常量mime:PDF C:/Ruby21/lib/ruby/gems/2.1.0/gems/actionpack-4.2.4/lib/action\u dispatch/http/mime\u type.rb:163:警告:这里有PDF的先前定义

可能是我卸载和重新安装不正确吗


谢谢

mimetype的错误是因为您可能

Mime::Type.register "application/pdf", :pdf

在已注册的
config/initializers/mime_types.rb
中。请删除该行

我不知道为什么,但当我的InvoicePdf继承自Prawn::Document时,它在向initialize发送参数时导致此错误

我通过删除继承并使用实例变量和get方法解决了这个问题,虽然不是最好的方法,但效果很好

最终代码:

class InvoicePdf 
  def initialize(invoice, view)
    @doc = Prawn::Document.new
  end

  def getDoc
    return @doc
  end
end

我犯了这个错误,我尝试了Manuel和Aulait的修复方法,但都不管用。在我恢复到以前的一些更改之后,我注意到super需要括号,无论您是否传入任何内容

def initialize(x, view)
  super()
  @x = x
end

这就是我最终需要做的所有事情来解决这个问题!祝您好运:)

无法写入未知属性“info”消息是否有文件和行号?这个文件看起来怎么样?当你创建一个最小的PDF文件时,这个错误也会发生吗?你能提供一个带有基本实现的演示项目,在那里你会得到错误信息吗?