【问题标题】:Carrierwave default image doesn't display载波默认图像不显示
【发布时间】:2015-04-06 20:11:59
【问题描述】:

我正在尝试在我的 Rails 3.2 应用程序中显示默认图像。我已按照 Carrierwave github 页面上的说明进行操作,并查看了几篇 Stackoverflow 帖子。但是,由于某种原因,它仍然无法正常工作。

这是我的代码:

在我的 photo_uploader.rb 文件中,我启用了此功能:

def default_url
  "/images/" + [version_name, "default.png"].compact.join('_')
end

在我的表单和显示视图中,我正在访问这样的图像:

<%= image_tag @user.photo.url %>

我的图片的路径是:

/app/assets/images/default.png

在我的 application.rb 中,我添加了以下行,因为这应该允许提供静态资产:

config.serve_static_assets = true

但是,当页面加载时,我的服务器显示以下内容:

ActionController::RoutingError (No route matches [GET] "/images/default.png")

我也尝试过重新编译我的资产。

关于我做错了什么有什么想法吗?

【问题讨论】:

    标签: ruby-on-rails carrierwave


    【解决方案1】:

    这是一个资产管道问题。

    尝试获取/assets/default.png(删除图片/)

    更多信息在这里:http://guides.rubyonrails.org/asset_pipeline.html

    【讨论】:

    • 谢谢,我应该知道的。
    【解决方案2】:

    另一种方法:

    ActionController::Base.helpers.asset_path("default.png")
    

    【讨论】:

      【解决方案3】:

      只需在 default_url 方法中返回“default.png”即可。

      def default_url
        "default.png"
      end
      

      【讨论】:

        猜你喜欢
        • 2013-05-01
        • 2019-06-13
        • 1970-01-01
        • 1970-01-01
        • 2013-02-02
        • 1970-01-01
        • 1970-01-01
        • 2019-10-23
        • 1970-01-01
        相关资源
        最近更新 更多