2016-03-24 15 views
0

Uygulamalarımda CSV dosyasını kullanarak ürünlere ihracat yapıyorum. Her bir ürün için, lokal makinede link veya yol olabilecek görüntünün yerini belirttiğim bir görüntü alanım var.Raylar 4: Görüntüyü CSV dosyasında verilen yoldan yükle

Görüntüyü, kullanıcının siteye erişmek için kullandığı makineden yükleyebilir miyim? Sunucu içindeki linkleri veya yerleri kullandığımda başarılı bir şekilde yapabilirim.

cevap

2

Hayır. Bunu yapabildiğini bir güvenlik açısından düşünün. Eriştiğiniz herhangi bir site, dosya sisteminizden istediğini okuyabildi! Neyse ki, bu mümkün değil.

Kullanıcının sunucuya dosya yükleyebileceği CarrierWave, PaperClip vb. Durumunda: Kullanıcı kendisinin tarayıcıda kendisini kendisi alır ve istek sunucuya gönderildiğinde, belirli bir dosyaya gönderilir. Kullanıcıdan açıkça seçilmiş, isteğin bir parçası olarak yüklenir. Yani, dosya sunucuya gönderilir - sunucu kullanıcının dosya sisteminden asla okumaz.

farktır:

Tamam budur: "Hey sunucu, burada ben bunu işleyebilmesi için, sana bunu geçiyorum Seçtiğiniz bir dosya var"

Bu TAMAM DEĞİLDİR : "Hey kullanıcı, bana bir istek göndermiş olduğunu biliyorum. Dosya sisteminden istediğimi okumak için kendime gideceğim!"

+0

Fakat PaperClip, CarrierWave vb. Bunu nasıl yapıyor? Temelde kullanıcılardan bir dosya alıyorlar mı? – Aswathy

+0

Kullanıcının kendisi tarayıcıda kendisini kendisi seçer ve istek sunucuya gönderildiğinde, açıkça kullanıcı tarafından seçilen özel dosya, isteğin bir parçası olarak yüklenir. Yani, dosya sunucuya gönderilir - sunucu kullanıcının dosya sisteminden asla okumaz. –

+0

Yani, bir dosyanın bir CSV hakkı kullanılarak yüklenmesi mümkün değil mi? – Aswathy