查找使用ActiveStorage上传的文件的二进制文件

时间:2019-02-23 18:07:41

标签: ruby-on-rails ruby rails-activestorage

我正在创建一个网站,用户可以在其中上传PDF格式的文档。 据我了解,文件一旦上传,就会以二进制文件的形式保存在数据库中。

我想找到ActiveStorage如何保存此文档(二进制)。基本上,我需要在控制器中检索该特定文件的0和1。

我想知道如何检索此二进制文件(作为字符串)。

我需要二进制文件,因为我想对它进行散列,以便将PDF的散列与另一个PDF的散列进行比较,并确定它们是否相同。

此外:如果用户两次上传相同 PDF文件。 ActiveRecords中的二进制文件是否相同?

1 个答案:

答案 0 :(得分:1)

您不需要这样做,Active Storage会计算文件的Base64编码的MD5摘要,可通过checksum方法获得。

ActiveStorage::Blob#checksum