2016-04-05 8 views
0
class AvatarUploader < CarrierWave::Uploader::Base 

    # Include RMagick or MiniMagick support: 
    # include CarrierWave::RMagick 
    # include CarrierWave::MiniMagick 

    # Choose what kind of storage to use for this uploader: 

    storage :fog 

    # Override the directory where uploaded files will be stored. 
    # This is a sensible default for uploaders that are meant to be mounted: 
    def store_dir 
    byebug 
    session[:user_email_id] 

    end 

    def get_time 
    @time = Time.now 
    end 

    # Provide a default URL as a default if there hasn't been a file uploaded: 
    # def default_url 
    # # For Rails 3.1+ asset pipeline compatibility: 
    # # ActionController::Base.helpers.asset_path("fallback/" + [version_name, "default.png"].compact.join('_')) 
    # 
    # "/images/fallback/" + [version_name, "default.png"].compact.join('_') 
    # end 

    # Process files as they are uploaded: 
    # process scale: [200, 300] 
    # 
    # def scale(width, height) 
    # # do something 
    # end 

    # Create different versions of your uploaded files: 
    # version :thumb do 
    # process resize_to_fit: [50, 50] 
    # end 

    # Add a white list of extensions which are allowed to be uploaded. 
    # For images you might use something like this: 
    def extension_whitelist 
    %w(jpg jpeg gif png) 
    end 

    # Override the filename of the uploaded files: 
    # Avoid using model.id or version_name here, see uploader/store.rb for details. 
    # def filename 
    # "something.jpg" if original_filename 
    # end 

end 

上記のstore_dirメソッドでは、文字列が返されることを想定しています。だから私は現在のユーザーの電子メールIDとして文字列を与えようとしています。これはすでに他のコントローラに設定されており、他のコントローラでもアクセス可能です。搬送波に関連していないものはありますか?私たちは、コントローラに「セッション[XX]」を使用する場合搬送波アップローダでセッションにアクセスできない

がさえspree_current_userは、このAvatarUploader

答えて

0

ではアクセスできないことを、コントローラには、ユーザのセッションを返す「セッション」と呼ばれる方法を、持っているので。私はAvatarUploaderやCarrierWave :: Uploader :: Baseのどちらもこのセッションメソッドを持っていないと考えています。そのため、あなたは 'session [xxx]'を呼び出すことができません。

+0

私はそこでセッションを使用できるいくつかのソリューションをお勧めしますか? – gates

+0

"model"メソッドを使用して希望するものを取得します –

+0

モデル変数は、アップローダが接続されているインスタンスオブジェクトを指します。 –

関連する問題