我正在使用Rails应用程序,我有一个has_one_attached的个人资料图片用于S3中的活动存储,我希望在为用户植入种子时从Faker收集其头像图像的数据。 这是种子代码:
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
这是User aka Student的模型(此模型设置正确,并且在通过网站上传图像时有效):
20.times do
Student.create(
first_name: Faker::Name.first_name,
last_name: Faker::Name.last_name,
phone_number: Faker::PhoneNumber.cell_phone,
school_id: School.first.id,
vehicle_make_model: Faker::Vehicle.make_and_model,
vehicle_year: Faker::Vehicle.year,
vehicle_color: Faker::Vehicle.color,
email_address: Faker::Internet.email,
password: "password",
email: Faker::Internet.email,
profile_picture: Faker::Avatar.image
).save
end
我之前已经为其余数据设定了种子,并且可以正常工作,但是一旦我集成了S3并尝试以该数据作为种子,它就不再对我有用。
答案 0 :(得分:0)
尝试这样的事情:
#seed_file
require 'open-uri'
def image_fetcher
open(Faker::Avatar.image)
rescue
open("https://robohash.org/sitsequiquia.png?size=300x300&set=set1")
end
20.times do |n|
s = Student.create(
...
#remove profile_picture from here
)
s.profile_picture.attach({
io: image_fetcher,
filename: "#{n}_faker_image.jpg"
})
end