我正在使用 Cloudinary 和 jquery 直接从浏览器上传图像到 RoR 应用程序中。我想我已经完全按照这里的说明进行了操作。
图片上传正常,但返回的 params[:image_id] 似乎在 # 符号后附加了签名,如下所示:
"image_1_id"=>"image/upload/v1383951287/foobar.jpg#b023156dfebede65......."}
所以这最终被保存在模型上。然后,当我尝试使用以下方法检索图像时:
<%= cl_image_tag(@model.image_1_id) %>
正如文档中所建议的那样,url不仅附加了签名,而且还复制了前面的部分路径,如下所示:
http://res.cloudinary.com/.../image/upload/v1/image/upload/v1383951287/foobar.jpg%23b023156d...
显然这个链接不起作用,但如果你从最后删除重复的路径和签名,它就会起作用。
我没有使用 CarrierWave,部分原因是文档中几乎没有(没有?)说明如何或为什么将它与非服务器端图像上传一起使用。此外,我正在使用 form_for 图像和其他属性,这可能是问题吗?表格如下所示:
<%= form_for @model do |f| %>
...
<%= f.cl_image_upload(:image_1_id) %>
...
<% end %>
非常感谢任何帮助。我对这些东西很陌生,所以很可能我错过了一些简单的东西。但值得一提的是,控制台中没有错误,并且 JS 文件似乎正在正确加载。