2017-12-05 13 views
0

クラスのユーザー< ApplicationRecord mount_uploader動作しない:絵、PictureUploader 終わりをpicture_uploader.rbでCarrierWave user.rbでCloudinary

クラスPictureUploader < CarrierWave ::アップローダー::ベース

曇った:: CarrierWave

ストレージ:

DEF「のアップロード/#{model.class.to_s.underscore} /#{mounted_asを}/store_dir:これは、マウントされることを意味するアップローダための賢明なデフォルトで

#ファイル#{model.id}」 端

environement.rb

require_relative 'アプリケーション'

Railsアプリケーションを初期化する

Rails.application.initialize!

_form.html.erbで 'carrierwave/ORM/ActiveRecordの'

<%= form.label :picture %> 

<%= form.file_field :picture, id: :user_picture %> 

遊走に

クラスCreateUsers <のActiveRecord ::移行を必要とします[5.1]

def change

create_table:users | t |

t.string :email 

    t.string :picture 

    t.timestamps 

end 

エンド

エンド

最後User.picture_urlがCloudinary上のURLがあるが、このURLにアップロードされた任意の画像がありません。

レールに入力すると動作します。 Cloudinary :: Uploader.upload( '/ home/my_image。JPG ')

答えて

0

app/assets/javascript/application.jsであなたは

//= require cloudinary/jquery.cloudinary 

app/views/layouts/application.html.erb

<%= yield(:after_js) %> 
    <%= javascript_include_tag "application", 'data-turbolinks-track' => true %> 
    <%= cloudinary_js_config %> 

そしてapplication.ymlで(あなたがcloudinary設定であなたを見つけるでしょう)

CLOUDINARY_URL: "cloudinary:/`/768932967533141:[email protected]" 
#this a fake url ;-) 

にを追加しましたあなたの問題はあなたのshow.html.erbにあります:)

<%= cl_image_tag(@user.picture.path, :secure => true, 
        :width => 100, :height => 150, :crop => :fill) %> 

ここでの設定は単なるexempleですが、あなたはあなたの写真を表示する@user.picture.pathが必要:)

詳細情報ここhttps://cloudinary.com/documentation/rails_image_manipulation

0

Cloudinaryのホットラインanwser:

「コメントアウトしてください10行目と15-17行目/app/uploader/pictures_uploader.rb

#保管場所:ファイル

#1デフstore_dir # "アップロード/#{model.class.to_s.underscore} /#{mounted_as} /#{model.id}" #端

そしてそれが動作します。

関連する問題