Ruby on rails 4 使用Rails4和CarrierWave无法刷新Cloudinary图像
我正在使用Cloudinary和CarrierWave从我的Rails应用程序上传图像,而且效果很好 我的要求是,用户可以有一个图像,因此,如果用户已经有一个图像,并且如果他/她上载了一个新图像,则新图像应该覆盖上一个图像 我的问题是,当我将新图像上传到Cloudinary时,它不会使以前的图像失效,因此旧图像仍然显示为用户图像 然后我找到了一个名为Ruby on rails 4 使用Rails4和CarrierWave无法刷新Cloudinary图像,ruby-on-rails-4,carrierwave,cloudinary,Ruby On Rails 4,Carrierwave,Cloudinary,我正在使用Cloudinary和CarrierWave从我的Rails应用程序上传图像,而且效果很好 我的要求是,用户可以有一个图像,因此,如果用户已经有一个图像,并且如果他/她上载了一个新图像,则新图像应该覆盖上一个图像 我的问题是,当我将新图像上传到Cloudinary时,它不会使以前的图像失效,因此旧图像仍然显示为用户图像 然后我找到了一个名为invalidate的选项,并尝试使用它,但没有成功 这是我的Cloudinary课程 class PictureUploader < Car
invalidate
的选项,并尝试使用它,但没有成功
这是我的Cloudinary
课程
class PictureUploader < CarrierWave::Uploader::Base
include Cloudinary::CarrierWave
version :show do
process :invalidate => true
end
end
class PictureUploadertrue
结束
结束
这是我的观点
recipe.picture\u url(:show)
但这显示的是旧图像,而不是新图像。我遗漏了什么?当首次访问Cloudinary映像时,它会缓存在CDN中。 您确实可以通过在保留公共ID的情况下重新上传来更新映像,但是如果您访问相同的URL,您可能仍然会收到映像的CDN缓存版本 您可以通过CDN告诉Cloudinary使图像无效,但是请注意,启用
无效
参数应包括在上载过程中,而不是在“版本”块中,因为无效是在重新上载时应用的,而不是在交付时应用的。还要注意,失效可能需要一个小时才能通过CDN完全传播
建议改用。将“versions”组件添加到URL会告诉Cloudinary在绕过CDN缓存版本的同时强制交付最新版本的映像。每次上传调用都会返回更新的版本值。有关更多信息:
虽然无效传播需要一段时间,“版本”组件会立即生效。首次访问Cloudinary映像时,它会缓存在CDN中。 您确实可以通过在保留公共ID的情况下重新上传来更新映像,但是如果您访问相同的URL,您可能仍然会收到映像的CDN缓存版本 您可以通过CDN告诉Cloudinary使图像无效,但是请注意,启用
无效
参数应包括在上载过程中,而不是在“版本”块中,因为无效是在重新上载时应用的,而不是在交付时应用的。还要注意,失效可能需要一个小时才能通过CDN完全传播
建议改用。将“versions”组件添加到URL会告诉Cloudinary在绕过CDN缓存版本的同时强制交付最新版本的映像。每次上传调用都会返回更新的版本值。有关更多信息:
虽然无效传播需要一段时间,“版本”组件会立即生效。保存我的一天。只需使用图像的直接Url即可解决问题。节省我的时间。只需使用图像的直接Url即可解决此问题。