簡體   English   中英

從Rails向Amazon s3上傳圖像時,回形針返回錯誤的URL

[英]Paperclip returning wrong url when uploading image from Rails to Amazon s3

我正在使用滑軌將圖像上傳到亞馬遜s3,並且返回的URL不正確。 但是,我注意到在我的開發服務器日志中,:key中提供了正確的URL:

從2014年6月14日13:04:39 -0400開始,通過ProductsController#saveProduct的GET“ / product / add?index = 0”為96.250.13.59作為HTML參數:{“ index” =>“ 0”}“ http ://s3-us-west-2.amazonaws.com/vigme/products/image_s3s//original/goods_09_086661?1402765480 “(0.3ms)BEGIN SQL(4.5ms)插入productsbuy_urlftp_transfer_datetimeftp_transfer_deleted_sourceftp_transfer_deleted_source_datetimeftp_transfer_processedimage_s3_content_typeimage_s3_file_nameimage_s3_file_sizeimage_s3_updated_atimage_s3_url )值(“ http://www.uniqlo.com/us/women/outerwear/jackets-and-coats/stretch-tailoreded/women-6661 .html#08 ','2014-06-14 17:04:40',1,'2014-06-14 17:04:40',1,'image / jpeg','goods_09_086661',19478,'2014 -06-14 17:04:40',' http: //s3-us-west-2.amazonaws.com/vigme/products/image_s3s//original/goods_09_086661?1402765480')[回形針]保存/ products / image_s3s / 001/855/192 / original / goods_09_086661 [AWS S3 200 0.845202 0重試] p ut_object(:acl =>:public_read,:bucket_name =>“ vigme”,:content_length => 19478,:content_type =>“ image / jpeg”,:data => Paperclip :: HttpUrlProxyAdapter:goods_09_086661,:key =>“ products / image_s3s / 001/855/192 /原始/ goods_09_086661" )

最后一個符號:key,如果添加到亞馬遜s3網址中,則包含正確的網址。 但是,它在頂部返回url。 我該如何解決?

好的,我自己想出了答案,所以只發布貼子來幫助任何發現類似問題的人。 問題是將圖像的URL分配給產品實例后,我沒有保存產品。 因此,不要求s3返回該圖像的URL,因為該圖像尚未保存在存儲桶中。 例如

product.image_s3 = url_for_image
product.save

# now i can access it
s3_image_url = product.image_s3.url

與之前的嘗試相反:

product.image_s3 = url_for_image
s3_image_url = product.image_s3.url
product.save

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM