0

そのため、私の Rails アプリでは、ユーザーが自分のアバター画像と背景画像をプロフィールに追加できるようにしました。

問題は、アバター画像をアップロードするたびに、アバターとプロフィールの背景の両方に表示されることです。背景画像をアップロードすると、背景とアバター画像の両方に表示され、設定した元のアバター画像が置き換えられます。

私のローカルホストでは、これは正常に機能します。ユーザーのプロフィールには、設定したアバター画像と背景画像の両方を表示できます。ただし、この問題は heroku でのみ発生するようです。

これを修正する方法について何か考えはありますか?

Rails アプリで、ペーパークリップと aws-sdk を使用しています。

これは、ユーザー #show からの私のコードの一部です...

バックグラウンド:

 <div class="bg-dark lter nav-user pos-rlt" style="<%= show_user_bg %>"> 

アバター:

<a href="#" class="thumb-sm avatar animated rollIn" style="margin-left:22%;" data-         toggle="dropdown">
<%= image_tag @user.avatar.url(:medium) %>
<span class="caret caret-white"></span>
</a>

背景の css は users_helper に含まれています...

module UsersHelper
def show_user_bg
"background:transparent url(#{@user.background.url}) no-repeat center center fixed; 
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;"
end
end

これはユーザーのモデルからのものです...

# Setup accessible (or protected) attributes for your model
attr_accessible :email, :password, :password_confirmation, :remember_me, :name, :avatar,         :tagline, :bio, :phone, :website, :city, :background
# attr_accessible :title, :body

validates_attachment :avatar, 
                    content_type: { content_type: ['image/jpeg',   'image/jpg', 'image/png', 'image/gif'] },
                    size: { less_than: 5.megabytes }
validates_attachment :background, 
          content_type: { content_type: ['image/jpeg', 'image/jpg', 'image/png', 'image/gif'] },
          size: { less_than: 5.megabytes }            

has_many :projects
has_attached_file :avatar, :styles => { :medium => "300x300>", :thumb => "100x100>" },  :default_url => "/images/:style/missing.png"
has_attached_file :background, :styles => { :medium => "300x300>", :thumb => "100x100>" },  :default_url => "/images/:style/missing.png"
end

ファイルをアップロードするためのフォームのコードは次のとおりです...

<%= f.input :avatar, label: "Upload Avatar", class: "btn btn-sm btn-info m-b-sm file-input" %>

<%= f.input :background, label: "Upload Background", class: "btn btn-sm btn-info m-b-sm file-input" %>

ログにエラーが記録されていません。だから、私は私が間違っていることではありません。

よろしくお願いいたします。

4

1 に答える 1

0

私はそれを考え出した。

それは実に単純なことでした。

以前は、画像サイズは両方とも :medium でした。そのため、何らかの理由で、ユーザーのアバター画像がプロフィールの背景画像としても表示されたり、その逆になったりしていました。

背景画像のサイズを :large に変更して寸法を変更すると、両方の画像がプロファイルに正しく表示されました。

has_attached_file :avatar, :styles => { :medium => "300x300>", :thumb => "100x100>" }, :default_url => "/images/:style/missing.png"
has_attached_file :background, :styles => { :large => "400x600>", :thumb => "100x100>" }, :default_url => "/images/:style/missing.png"
于 2013-10-01T03:23:01.207 に答える