rails 3,paperclip和s2 bucket发生路由错误。我想在我的应用程序中附加视频。但是它失败并抛出以下内容
ActionController::RoutingError (No route matches [GET] "/missing.png"):
actionpack (3.2.13) lib/action_dispatch/middleware/debug_exceptions.rb:21:in `call'
actionpack (3.2.13) lib/action_dispatch/middleware/show_exceptions.rb:56:in `call'
railties (3.2.13) lib/rails/rack/logger.rb:32:in `call_app'
railties (3.2.13) lib/rails/rack/logger.rb:16:in `block in call'
activesupport (3.2.13) lib/active_support/tagged_logging.rb:22:in `tagged'
railties (3.2.13) lib/rails/rack/logger.rb:16:in `call'
actionpack (3.2.13) lib/action_dispatch/middleware/request_id.rb:22:in `call'
rack (1.4.5) lib/rack/methodoverride.rb:21:in `call'
rack (1.4.5) lib/rack/runtime.rb:17:in `call'
activesupport (3.2.13) lib/active_support/cache/strategy/local_cache.rb:72:in `call'
rack (1.4.5) lib/rack/lock.rb:15:in `call'
我在javascript中包含了videos.js文件。我无法在任何文件夹中看到missing.png。那么,为什么我收到这个错误?从哪里可以得到missing.png文件?
答案 0 :(得分:0)
我认为您将一些回形针示例复制到您的应用中。检查模型,其中包含附件。你应该看到类似的东西:
has_attached_file :photo, :styles => { :medium => "250x250>", :thumb => "150x150>" },
:default_url => "/system/missing/:style/missing.jpg",
:convert_options => {:all => '-quality 80' }
在这种情况下,default_url 是图像的路径,如果对象没有附加图片,则应显示该路径。在您的情况下,如果您不希望在对象没有附加视频剪辑的情况下显示某些照片,则应删除此行。
但如果您确实希望在对象没有附加视频的情况下显示某些图片,那么您应该将文件missing.png
放到应用的/public
文件夹中。