Rails:用于保存上传图像的列类型是什么?

时间:2012-09-27 21:34:37

标签: ruby-on-rails

这是我的第一个Rails项目。我对图像文件应该如何保存在数据库中感到有些困惑,因为它们占用了大量空间。我的网站将成为人们上传大量图片的网站。在我创建图片表的迁移中,我会将图像文件名保存为字符串吗?还有人提示保存图像(资产,公共等)的位置吗?

对不起,我只是一个寻求指导的小菜。

3 个答案:

答案 0 :(得分:4)

您应该考虑将图像存储在亚马逊的S3(或类似的替代品)而不是数据库中。您可以使用paperclip之类的宝石来帮助您上传到远程存储服务器。

但是,如果您确实想将二进制图像数据存储在数据库中,那么您可能希望使用“blob”作为列数据类型。

答案 1 :(得分:1)

您也可以使用carrierwave。只需创建一个字符串列并在其上安装上传器。

Blob只应在特殊情况下使用!

答案 2 :(得分:0)

将图像保存为服务器或云上的存储系统上的文件。然后,在表中创建一条记录,并指明路径。

不要存储byte \ BOLB的图像字节。