2

Carrierwave から画像をレンダリングしようとしています。ページのソースを表示すると、

<img alt="Photo_44" src="/uploads/user/image/59/Photo_44.jpg" />

ただし、そのsrc URLをクリックすると、

No route matches [GET] "/uploads/user/image/59/Photo_44.jpg"

キャリアウェーブのデフォルト設定を使用しています。画像はユーザーテーブルの画像列に正しくアップロードされ、ローカルではパス

サーシャ/デスクトップ/rails_projects/myproject/public/uploads/user/image/59/Photo_44.jpg

も存在します。ただし、正しく表示されません。レールキャストをフォローしています

http://railscasts.com/episodes/253-carrierwave-file-uploads?autoplay=true

と読書

https://github.com/jnicklas/carrierwave

しかし、私は何が間違っているのか理解できないようです。画像をアップロードする場所はこちら

<%= form_for(resource, :as => resource_name, :url => registration_path(resource_name), 
            :html => { :method => :put, :multipart => true }) do |f| %>
    <%= devise_error_messages! %>
    <%= render '/shared/fields', object: f.object, f: f %>
    <%= f.submit "Save changes", :class => "btn btn-large btn-primary", :style =>"display:block;" %>
    <div class="edit_avatar" >
        <%= f.file_field :image %>
    </div>
<% end %>

そしてそれをレンダリングしようとしています...

<%= image_tag @user.image_url.to_s %>

私は何を間違っていますか?助けていただければ幸いです = ) ありがとうございます

4

1 に答える 1

3

config.serve_static_assets = trueまだ設定していない場合は、設定してみてください。

于 2012-05-16T06:33:00.647 に答える