我正在尝试使用ActiveStorage在我的rails应用程序中为现有用户上传头像,但是通过设计编辑页面上传图像后,它不显示图像。
用户模型
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
设计/注册/编辑.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>
您应该允许这样的参数:
devise_parameter_sanitizer.permit(:account_update, keys: [:username, :first_name, :last_name, :email, :password, :currentpassword, :remember_me, :avatar])