3

任何人都知道一种简单的方法来防止损坏的图像在开发中撞击 Rails?

有时我需要加载生产数据库来调试特定问题,而损坏的图像会给日志添加噪音并减慢 Rails。

我正在使用 pow 并通过 nginx 代理 https 请求(在 Mac OS X Lion 上)。

[更新]

升级到 rails 3.1.3 并添加config.serve_static_assets = falsedevelopment.rb后,问题依然存在。

这是日志中的一个示例:

Started GET "/system/template_pics/images/000/000/043/original-254f3340aa9285267db373d8f479144e-1327358518/home6.jpeg" for 127.0.0.1 at Mon Feb 27 14:42:34 +1100 2012

ActionController::RoutingError (No route matches [GET] "/system/template_pics/images/000/000/043/original-254f3340aa9285267db373d8f479144e-1327358518/home6.jpeg"):
4

2 回答 2

0

我有一个脚本,它处理使用生产中的 MySQL 转储更新开发数据库,​​并且在其中我确保将 Paperclip 字段清零,以便missing.png在 dev 上加载常规并且日志中没有混乱。所以对于你的模板图片,你会有类似的东西:

update template_pics SET image_file_name=NULL, image_content_type=NULL, image_file_size=NULL, image_updated_at=NULL;

确保您有适合您missing.png的开发的样式变体,以便彻底做到这一点。

于 2014-06-19T05:56:42.860 回答
0

将 rails 设置为不提供静态资源config/development.rb

config.serve_static_assets = false

Nginx 应该设置为自己提供静态资产,任何不存在的都不会成为 Rails 的服务器。

于 2011-10-26T20:33:12.670 回答