मैं वाहक लहर, रेल और अमेज़ॅन एस 3 का उपयोग कर रहा हूं। हर बार जब मैं एक छवि बचाने के लिए, छवि S3 में पता चलता है और मैं इस तरह के नाम के साथ प्रबंधन कंसोल में देख सकते हैं:अमेज़ॅन एस 3 और कैरियरवेव बाल्टी में यादृच्छिक छवि नाम डेटाबेस में मेल नहीं खाता
:https://s3.amazonaws.com/bucket-name/ uploads/images/10/888fdcfdd6f0eeea_1351389576.png
लेकिन मॉडल में, नाम यह है
https://bucket-name.s3.amazonaws.com/ uploads/images/10/b3ca26c2baa3b857_1351389576.png
सबसे पहले, यादृच्छिक नाम अलग क्यों है? मैं तो जैसे अपलोड करने वाले में यह पैदा कर रहा हूँ:
def filename
if original_filename
"#{SecureRandom::hex(8)}_#{Time.now.to_i}#{File.extname(original_filename).downcase}"
end
end
मैं जानता हूँ कि यह एक यादृच्छिक स्ट्रिंग हर कॉल प्राप्त नहीं हो रहे हैं क्योंकि मॉडल में गलत यूआरएल सुसंगत और बचाया है। इस प्रक्रिया में कहीं भी छवि नाम सहेजने के बाद मॉडल में सहेजने के लिए जेनरेट किया जाना चाहिए और अमेज़ॅन एस 3 पर भेजा जाना चाहिए। अजीब।
इसके अलावा, क्या मुझे urge regex का उपयोग किये बिना bucket.s3 के बजाय s3/bucket के मामले में एक मैच कर सकता है? क्या कैरियरवेव या उसके लिए कुछ विकल्प है?
मैं उस टिप की सराहना करता हूं जो इसे सहेजा नहीं गया था। मुझे बस इसे बचाने की जरूरत है – AJcodez