我有一个rails 3.1应用程序,它将图像存储在postgresql数据库的二进制字段中(我知道在数据库中存储图像的潜在问题,但现在必须这样做).在开发模式和OSX上的规格本地一切都很好,但所有图像都在部署到Heroku的应用程序中被破坏.我已经通过将本地计算机指向heroku实例使用的同一数据库并且所有图像都正确显示来验证数据库中的数据是否正确.
所以,问题似乎在于ActiveRecord(在Heroku上运行)从数据库加载数据.我也猜测这是一个编码问题.在本地运行rails控制台我可以验证这些字段的字节大小是否正确,但在Heroku上运行rails控制台显示错误的字节大小.实际上,在Heroku上通过ActiveRecord加载N字节文件会导致所有文件的字节大小为2N + 1.
任何帮助是极大的赞赏.
postgresql encoding activerecord ruby-on-rails rails-activerecord