Rails应用程序的种子云相册照片

时间:2018-07-03 21:30:19

标签: ruby-on-rails cloudinary seed

我有一些cloudinary的照片,我想做个种子(在我的rails应用中)。 我正在使用Carrierwave。

在我的种子中,我尝试放置cloudinary的url图像:

Course.create! ({
  photo: "fismpnq3zma80dc2ovjt.jpg"
)}

但这是行不通的。我该怎么办?

如果我通过控制台询问:

pry(main)> c = Course.first
....
pry(main)> c.photo

@cache_id=nil,
@file=nil,
@filename=nil,
....
@model=#<Way:0x00007f80e7a3a9c0
photo:nil,
....
@mounted_as=:photo,
@versions=nil>

1 个答案:

答案 0 :(得分:1)

为了使用create方法,需要先(通过签名)验证参数,然后SDK才能保存它们。

例如:

resource_type = "image" 
type = "upload"
version = 1234567890
public_id = "fismpnq3zma80dc2ovjt"
format = "jpg"
signature = Cloudinary::Utils.api_sign_request({:public_id=>public_id, 
:version=>version}, Cloudinary.config.api_secret)
photo = "#{resource_type}/#{type}/v#{version}/#{public_id}.#{format}## 
{signature}"
Course.create!({ photo: photo )}

请告诉我它是否适合您。

-Yakir