使用来自控制台的载波附加文档

Attach document using carrierwave from console

我的应用程序 public 文件夹中有一个文档 'example.docx'。

我想使用载波 gem 从附有该文档的控制台创建主题记录,如下所示:

Subject.create(group_id: 3, type: 1, attachment: __________)

subject.rb:

mount_uploader :attachment, FileUploader

我试着按照文档中的说明去做:

subject = Subject.new
File.open("public/example.docx") do |f|
  subject.attachment = f
end
subject.save!

但是 subject.attachment.url 结果是 NoMethodError: undefined method `url' for "#<File.........>":String

假设您在文件 app/uploaders/file_uploader.rb 中有一个 FileUploader 那么这听起来可能是应用程序重启 and/or spring 问题 - 即。您的应用尚未 fully/successfully 重新加载上传器。

所以:

  1. 停止您的控制台和服务器。
  2. 停止 spring spring stop(或终止进程)。
  3. 启动控制台。
  4. 再试一次 creating/saving。