アプリケーションにサインアップしたばかりのユーザーから、Facebook または Twitter の既存の画像を Amazon s3 にアップロードしようとしていますが、一部の検証ではユーザー オブジェクトを保存できませんImage is invalid.
。しかし、私はそれを削除しましたが、それは言い続けていますImage is invalid.
- これはエラーではありません。画像の URL 文字列が正しい場合でも、carrierwave の検証からの単なるメッセージだと思います。
アバターアップローダ
# encoding: utf-8
class AvatarUploader < CarrierWave::Uploader::Base
include CarrierWaveDirect::Uploader
include CarrierWave::RMagick
# Include the Sprockets helpers for Rails 3.1+ asset pipeline compatibility:
include Sprockets::Helpers::RailsHelper
include Sprockets::Helpers::IsolatedHelper
include CarrierWave::MimeTypes
process :set_content_type
def store_dir
"avatar/#{model.id}"
end
version :thumb do
process resize_to_fill: [50, 50]
end
# def extension_white_list
# %w(jpg jpeg gif png bmp)
# end
end
ユーザーの作成:
...
new_user = User.create( :name => auth['info']['name'],
:email => User.email_from_auth(auth) )
auth_image_url = Authentication.larger_image(auth) # a string of user image url from social network authentication data. ie: http://a0.twimg.com/profile_images/1255111511/skyline.jpg
unless auth_image_url.blank?
new_user.remote_image_url = auth_image_url
new_user.save
end
...