使用没有名称的载波上传文件

Upload file with carrierwave without name

又是我。我尝试使用 carrierwave 上传一些 yaml 文件。到目前为止一切正常。

因此,如您所知,对于载波,表格如下所示:

<%= form_for @resume, html: { multipart: true } do |f| %>
      <%= f.label :name %><br>
      <%= f.text_field :name, :required => true %>
      <%= f.label :attachment %><br>
      <%= f.file_field :attachment, :required => true %>
      <br><br>
      <%= f.submit "Save", class: "btn btn-primary" %>
  <% end %>

我现在要做的是删除 "name" 字段。我不需要它。所以我认为这很简单,只需删除表单的 "name" 部分即可。但是后来我在上传时遇到错误:

Name can't be blank

所以我现在几乎尝试了所有...我设置了 required => false 相同的结果。 我去了 Github 并查看了他们的操作方法...有覆盖名称的方法,但没有人关心上传没有名称的文件。有人可以告诉我如何在没有此名称字段的情况下上传文件吗?

谢谢!

编辑:

我的resume.rb模特:

class Resume < ActiveRecord::Base
  mount_uploader :attachment, AttachmentUploader # Tells rails to use this uploader for this model.


end

我的附件上传者:

class AttachmentUploader < CarrierWave::Uploader::Base
  storage :file

  def store_dir
    "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
  end

  def extension_white_list
    %w(yml)
  end

  def filename
    "something.jpg" if original_filename # This is the part where i'm trying around right now.
  end

end

尝试删除 table resumes 和其他相关的列 name, 也许在视图、控制器(strong params)、迁移文件...

然后重新运行drop,迁移数据库