2

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")

また、アセットを再コンパイルしてみました。

私が間違っていることについてのアイデアはありますか?

4

3 に答える 3

3

別のアプローチ:

ActionController::Base.helpers.asset_path("default.png")
于 2014-07-24T17:40:19.517 に答える