Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Json 用于上载图像的CarrierWave URL与cloudinary一起使用_Json_Api_Serialization_Ruby On Rails 4 - Fatal编程技术网

Json 用于上载图像的CarrierWave URL与cloudinary一起使用

Json 用于上载图像的CarrierWave URL与cloudinary一起使用,json,api,serialization,ruby-on-rails-4,Json,Api,Serialization,Ruby On Rails 4,我曾使用cloudinary进行图像上传,但现在我将此过程与CarrierWave集成,所有工作都顺利进行,现在我希望与CarrierWave一起使用url,而不是与cloudinary一起使用,如下所示: http://res.cloudinary.com/doejo/image/upload/v1401968816/kqg1xxwaehucszvngk4f.jpg 这是我的ImageSerializer代码 class ProductImageSerializer < ActiveM

我曾使用cloudinary进行图像上传,但现在我将此过程与CarrierWave集成,所有工作都顺利进行,现在我希望与CarrierWave一起使用url,而不是与cloudinary一起使用,如下所示:

http://res.cloudinary.com/doejo/image/upload/v1401968816/kqg1xxwaehucszvngk4f.jpg
这是我的ImageSerializer代码

class ProductImageSerializer < ActiveModel::Serializer
  attributes :small, :medium, :large

  def small
    url(width: 116, height: 116, crop: "fill")
  end

  def medium
    url(width: 640, height: 400, crop: "fill")
  end

  def large
    url(width: 1000, crop: "fill")
  end

  private

  def url(options={})
    options[:format] = "png"
    options[:secure] = true

    Cloudinary::Utils.cloudinary_url(object.token, options)
  end
end
class ProductImageSerializer
我如何生成carrierwave url,以便我可以使用carrierwave而不是cloudinary查看图像url,请指导。
提前感谢。

您可以在CarrierWave上载文件中将小/中/大定义为版本,然后使用object.image.small.url等。

您能否详细说明CarrierWave url的含义?你想实现什么?我使用cloudinary进行图像上传,对于api,我的序列化程序中有一个image属性,它提供了一个图像URl,这是通过使用cloudinary Utils完成的,现在我将此过程与careerwave集成,希望不再使用此方法cloudinary::Utils.cloudinary\U URl(object.token,options)正在寻找输出使用或属于carrierwave helpers或类似内容的图像url的方法…我找到了一个简单的解决方案,将此代码-->>>Cloudinary::Utils.Cloudinary\u url(object.token,options)替换为-->>>>对象。如果有更合适的解决方案,请更新图像url(options),谢谢。在本例中,object.image\uURL(选项)是一种方法。您还可以在CarrierWave上载程序中定义版本,并使用object.image.small.urlcool,工作正常。你可以把它作为答案贴出来。谢谢你@Tal