Rails 6 Active Storage:找不到或建立Blob:预期可附加…((重新设置附件时发出))>

问题描述 投票:0回答:1

在我的应用程序中,管理员用户可以建议

并编辑到另一个用户的配置文件。我希望管理员用户能够为非管理员用户建议一个(新)头像。当前,我的用户(我的应用程序中的用户= 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的“可附加部分”,但我不确定如何解决。

谢谢您的帮助。

在我的应用程序中,管理员用户可以建议并编辑其他用户的个人资料。我希望管理员用户能够为非管理员用户建议一个(新)头像。当前...

ruby-on-rails activerecord attachment rails-activestorage
1个回答
0
投票

我通过替换行解决了此问题

© www.soinside.com 2019 - 2024. All rights reserved.