没有为用户头像上传图像(活动存储)

时间:2019-08-15 08:39:43

标签: ruby-on-rails image-uploading rails-activestorage

我正在尝试使用ActiveStorage在我的Rails应用程序中为现有用户上传头像,但是在通过devise编辑页面上传图片后,它不会显示该图片。

用户模型

class User < ActiveRecord::Base
  has_one_attached :avatar
end

Application_controller

def configure_permitted_parameters
 devise_parameter_sanitizer.permit(:account_update) { |u| u.permit(:username, :first_name, :last_name, :email, :password, :currentpassword, :remember_me, :avatar)}
end

devise / registrations / edit.html.erb

<div class="field">
  <% if @user.avatar.attached? %>
    <%= image_tag @user.avatar %>
  <% end %>
</div>

<div class="field">
  Upload a Profile Picture
  <%= f.label "Profile Picture"  %>
  <%= f.file_field :avatar %>
</div>

1 个答案:

答案 0 :(得分:0)

您应该允许这样的参数:

devise_parameter_sanitizer.permit(:account_update, keys: [:username, :first_name, :last_name, :email, :password, :currentpassword, :remember_me, :avatar])