铁人队的比赛不持久

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

我有附件

class User < ApplicationRecord
  has_one_attached :avatar

[当我创建用户并执行种子操作时

user = User.create({"name":"pedro})
file = open("#{Rails.root}/app/assets/img/user.png")
user.avatar.attach(io: file, filename: "user.png")
the avatar gets attached

但是,当我尝试在控制器上复制/更新它时:

user = User.find(params["id"])
user.avatar.purge
file = open("#{Rails.root}/app/assets/img/user.png")
user.avatar.attach(io: file, filename: "user.png")

它以某种方式被绑定(如果我执行了user.avatar.attached?在附加后返回false和true之前),但是该blob无法持久保存/保存到存储中。它只以某种方式仅与新创建的对象一起存在。

我曾尝试寻找类似问题的问题,但没有成功。

ruby-on-rails ruby image blob
1个回答
0
投票

我看不到任何地方将其保存到数据库中

user.save

此外,添加内容类型也是一种很好的做法

user.avatar.attach(io:文件,文件名:“ user.png”,content_type:'image / png'

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