我正在尝试使用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>
答案 0 :(得分:0)
您应该允许这样的参数:
devise_parameter_sanitizer.permit(:account_update, keys: [:username, :first_name, :last_name, :email, :password, :currentpassword, :remember_me, :avatar])