我有Rails 7我已经使用Cloudinary设置了Active Storage。当我写一篇包含一个或多个图像的文章时,图像会正确上传到Cloudinary。然而,当我删除这篇文章时,它并没有从Cloudinary中删除图像。我已经安装了gem 'activestorage-cloudinary-service'并相应地修改了我的模型,但它没有任何区别。还有别的办法吗?
我的型号:
class Article < ApplicationRecord
belongs_to :user
validates :user, presence: true
has_many_attached :images, service: :cloudinary, dependent: :purge
has_many :article_categories, dependent: :destroy
has_many :categories, through: :article_categories
end
config/storage.yml:
test:
service: Disk
root: <%= Rails.root.join("tmp/storage") %>
# local:
# service: Disk
# root: <%= Rails.root.join("storage") %>
cloudinary:
service: Cloudinary
cloud_name: myname
api_key: _______
api_secret: ____
environment: <%= ENV['CLOUDINARY_URL'] %>
secure: true
prefix: development/
我已经安装了gem 'activestorage-cloudinary-service',我已经修改了模型。我在控制台测试,它不删除Cloudinary。除了,当我在Rails C中上传图像时。我已经看到,当我在控制台做的时候,它把图像放在一个名为“开发”的文件夹中,当我在我的表单中做的时候,他把图像从文件夹中取出。可能就是因为这个原因,他无法删除图像。
1条答案
按热度按时间zbsbpyhn1#
看起来问题可能与上传图像的文件夹结构有关。通过控制台上传时将图像放在“开发”文件夹中与通过表单上传时将图像放在文件夹外之间的区别。请尝试更改,看看这是否是问题所在。