在我的Rails项目中进行上传时,数据库存储

---!ruby / object:文件 content_type:application / octet-stream original_path:my.numbers

如何让它仅在我的视图中返回my.numbers?

非常感谢! 马可

PS。我不想最好使用attachment_fu或任何其他插件。

有帮助吗?

解决方案

文件上传实际上是由控制器作为File对象而不是数据接收的,因此您有责任将其读入。通常上传的文件保存在临时目录中,并且打开文件句柄存在于PARAMS。

您可以执行以下操作来检索数据:

def create
  # Read in data from file into parameter before creating anything
  if (params[:model] and params[:model][:file])
    params[:model][:file] = params[:model][:file].read
  end

  @model = MyModel.create(params[:model])
end

您可能需要确保数据库中的列可以存储二进制数据。在MySQL迁移中,这是:二进制列类型。

其他提示

您可以使用帮助程序original_filename访问上载文件的名称。 所以params [:model] [:file] .original_filename

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top