1

新しいアセット パイプラインが CarrierWave のデフォルト メソッドを台無しにしていると思います。デフォルトの画像として使用したいファイルが として保存されていますapp/assets/images/listing_defaults/default.png

私のアップローダーには、次のものがあります

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

アプリを実行すると、そのアドレスで画像が参照可能になります ( localhost:3000/assets/listing_defaults/default.png)

ただし、何らかの理由で、デフォルトの画像をビューに表示しようとすると、何も表示されません。

<p>
  <b>Images:</b>
  <ul>
    <% @listing.images.each do |image| -%>
      <li><%= image_tag image.image_url.to_s %></li>
    <% end -%>
  </ul>
</p>

それでも、アップロードされたファイルは正常に機能しているようです。何か案は?

ちなみに、default_url を次のように設定しようとしましたが、うまくいきませんでした。

"#{Rails.root}/app/assets/images/listing_defaults/" + [version_name, "default.png"].compact.join('_')
4

3 に答える 3

0

私はそれを修正しました!私は同じ問題を抱えていました。

私はそう呼んでいます... user.avatar.tiny.url

添付ファイルが存在しない場合は、デフォルトの URL に移動します:)

于 2011-07-28T23:40:56.717 に答える
0

先頭のスラッシュが抜けているようです:

"/assets/listing_defaults/" + [version_name, "default.png"].compact.join('_')
于 2011-07-28T06:27:09.577 に答える
0

画像を assets/image フォルダーとアップローダー ファイルに配置しました。

[version_name, "image_name.png"].compact.join('_')

見る:

<%= image_tag @something.image_url%>
于 2013-05-24T14:23:56.067 に答える