我正在使用Rails 5.2和ActiveStorage直接上传以及https://github.com/musaffa/file_validators gem来进行文件类型验证。
当我不使用直接上传功能时,一切都会按预期进行,当头像中包含非图像文件时,出现验证错误。
比我切换直接上传。失败的情况是:记录已经上传了头像。我正在尝试上传文本文件。我在表单中收到验证错误,但附件发生了错误。
当我在控制台中签入时, user.avatar.attached?它给出 true ,但 user.avatar.blob 是 nil 。因此,当我返回到显示视图时,我遇到了异常undefined method `variable?' for #<ActiveStorage::Attached::One:0x00007fdab3fd4450>
因此,即使验证未通过,某些存储记录也会被更新,这当然是不好的。