在我的应用程序中,管理员用户可以建议并编辑到另一个用户的个人资料。我希望管理员用户能够为非管理员用户建议一个(新)头像。当前,我的用户(我的应用程序中的用户= spkr
)模型具有:
has_one_attached :image
has_one_attached :edited_image
image
是用户选择的头像图片,edited_image
是管理员用户建议的头像图片。
使用管理员“更新”表单时,edited_image
已设置
if spkr_params[:edited_image].present?
@spkr.edited_image = spkr_params[:edited_image]
end
此操作成功将附件设置为edited_image
。
当管理员用户提交编辑内容时,非管理员用户会收到确认电子邮件。单击后,我希望非管理员用户的image
进行更新。
...
if @spkr.edited_image.present?
@spkr.image.purge
@spkr.image = @spkr.edited_image
end
@spkr.save!
但是我收到了@spkr.save!
上出现的以下错误:
Could not find or build blob: expected attachable,got #<activeStorage::Attached::One:0x00007fdcc44fa440 @name="edited_image",@record=#<Spkr id: 154... >>
edited_image
中的@spkr
:
@spkr.edited_image
=> #<activeStorage::Attached::One:0x00007fdcc44fa440 @name="edited_image",@record=#<Spkr id: 154...>>
我的感觉是@ spkr.edited_image不是@ spkr.edited_image的“可附加部分”,但是我不确定如何解决此问题。
谢谢您的帮助。