Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 回形针:与mailboxer gem集成_Ruby On Rails_Ruby_Paperclip_Attachment - Fatal编程技术网

Ruby on rails 回形针:与mailboxer gem集成

Ruby on rails 回形针:与mailboxer gem集成,ruby-on-rails,ruby,paperclip,attachment,Ruby On Rails,Ruby,Paperclip,Attachment,我正在使用gem,但我不知道如何将它与回形针(Message类)一起使用 将曲别针与用户类一起使用是: class User < ActiveRecord::Base has_attached_file :picture end class用户true do | t |。。。。。t、 字符串“document\u file\u name”t.string“document\u content\u type”t.integer“document\u file\u size”t.date

我正在使用gem,但我不知道如何将它与回形针(Message类)一起使用

将曲别针与用户类一起使用是:

class User < ActiveRecord::Base
  has_attached_file :picture
end
class用户
如何将has_attached_文件添加到Message类(模型中没有Message.rb)

谢谢。

两种解决方案:

  • 使用carrierwave()制作的内置附件

  • 猴子补丁
    消息
    型号:

在初始值设定项中,执行以下操作:

Message.class_eval do

  #your paperclip code goes here

end

别忘了

gem用于在web应用程序中发送消息。如果你解析了这些信息,你可以添加html来显示图片。谢谢你的回答,但是这些信息应该有任何类型的文件作为附件(jpg,pdf,…)。因此,
消息
类应该有
文件:document
。但考虑到models文件夹中没有message.rb,问题是如何做到这一点。实际上,有附件!但是对于carrierwave,请参见:注意:上面的链接不起作用,请改用:或者更重要的是,在message.rb中查找读取
mount\u uploader:attachment,AttachmentUploader
我将其添加到初始值设定项文件中:
Message.class\u eval do attr\u accessible:document已附加了\u文件:document end
并进行了迁移,但当我运行
Message时,我得到了
未定义的方法“document\u file\u name”
。首先。document
这是我的schema.rb messages表内容迁移:
create_表“messages”,:force=>true do | t |。。。。。t、 字符串“document\u file\u name”t.string“document\u content\u type”t.integer“document\u file\u size”t.datetime“document\u updated”在“end
处更新,因此
document\u file\u name
出现在messages表中。好吧,这完全是逻辑:
Message
是一个STI,根模型是
Notification
。你应该像这里一样:你是对的,它起作用了。我运行了通知迁移表,并执行了Notification.class_eval而不是Message.class_eval,现在它可以工作了。你能添加一个答案让我接受吗?不需要评估通知,当前的答案很好