ruby on rails - আমি কিভাবে একটি ইউআরএল থেকে একটি ফাইল ডাউনলোড করতে এবং এটি Rails সংরক্ষণ করতে পারেন?



ruby-on-rails file-handling (4)

আমার কাছে একটি চিত্রের একটি URL আছে যা আমি স্থানীয়ভাবে সংরক্ষণ করতে চাই, যাতে আমি আমার অ্যাপ্লিকেশনের জন্য থাম্বনেইল তৈরি করতে পেপারক্লিপ ব্যবহার করতে পারি। ইমেজ ডাউনলোড এবং সংরক্ষণ করার সেরা উপায় কি? (আমি Ruby ফাইল হ্যান্ডলিং মধ্যে লাগছিল কিন্তু কিছু জুড়ে না।)

https://src-bin.com


Answer #1

আমি এই পরিষ্কার উপায় মনে করি:

require 'open-uri'

File.write 'image.png', open('http://example.com/image.png').read

Answer #2

এটা চেষ্টা কর:

require 'open-uri'
open('image.png', 'wb') do |file|
  file << open('http://example.com/image.png').read
end

Answer #3

যদি আপনি PaperClip ব্যবহার করছেন, একটি URL থেকে ডাউনলোড করা এখন স্বয়ংক্রিয়ভাবে পরিচালনা করা হয়।

আপনি কিছু মত পেয়েছেন অনুমান:

class MyModel < ActiveRecord::Base
  has_attached_file :image, ...
end

আপনার মডেলে, শুধু একটি URL হিসাবে চিত্রটি নির্দিষ্ট করুন, এরকম কিছু (ইচ্ছাকৃত দীর্ঘস্থানে লিখিত):

@my_model = MyModel.new
image_url = params[:image_url]
@my_model.image = URI.parse(image_url)

আপনি সম্ভবত আপনার মডেল একটি পদ্ধতিতে এই রাখতে চান। এটি হেরোকুর অস্থায়ী ফাইল সিস্টেমে ঠিক সূক্ষ্ম কাজ করবে।

Paperclip সেখানে থেকে এটি নিতে হবে।

উত্স: paperclip ডকুমেন্টেশন


Answer #4

স্ট্যান্ডার্ড লাইব্রেরি Net::HTTP । ডকুমেন্টেশান HTTP ব্যবহার করে নথি ডাউনলোড করার বিভিন্ন উদাহরণ প্রদান করে।





file-handling