"Enter"a basıp içeriğe geçin

Django’da dosyalar nasıl yüklenir? Linux ipucu

İndirme seçeneği, çevrimiçi kitap, ücretsiz uygulama yazılımı, ücretsiz oyunlar vb. Herhangi bir web sitesi için genel bir gerekliliktir. Bu web sitesinin kullanıcıları, web sitesinin indirme özelliği uygulandığı takdirde gerekli dosyaları cihazlarına indirebilir. Dosya, belirli bir URL çalıştırıldıktan veya indirme bağlantısı tıklandıktan ve kullanıcıdan izin alındıktan sonra indirilebilir. Bu eğitim size herhangi bir indirme bağlantısı olmadan bir metin dosyasını ve Django uygulamanızdaki indirme bağlantısını kullanarak bir PDF dosyasını indirmenin yollarını gösterecek.

Temel gereksinimler:

Bu öğretici için komut dosyasını uygulamadan önce aşağıdaki görevleri tamamlamanız gerekir.

  1. Ubuntu 20+ üzerine Django 3+ kurun (tercih edilir)
  2. Django projesi oluşturma
  3. Sunucunun düzgün çalışıp çalışmadığını kontrol etmek için django sunucusunu çalıştırın.

Django uygulamasını yükleyin:

adlı bir Django uygulaması oluşturmak için aşağıdaki komutu çalıştırın. uygulamayı indir.

$ python3 Manage.py Uygulamayı başlat Uygulamayı indir

Django veritabanına erişecek kullanıcıyı oluşturmak için aşağıdaki komutu çalıştırın. Kullanıcıyı daha önce oluşturduysanız, komutu çalıştırmanıza gerek yoktur.

$ python3 Manage.py süper kullanıcıyı oluşturur

Uygulama adını şuraya ekleyin: INSTALED_APP den bir bölüm ayarlar.py bir dosya.

INSTALED_APPS =[
…..
‘indir uygulaması’
]

Adı olan bir klasör oluşturun Şablonlar içeri uygulamayı indir Klasörü ayarlayın ve Kalıp uygulama sitesi Şablonlar den bir bölüm ayarlar.py bir dosya.

Şablonlar =[
{
….
‘DIRS’: [‘/home/fahmida/django_pro/dopwnloadapp/şablonlar’]Ve
….
}Ve
]

Metin dosyasını indirin:

onlar değişir görünümler.py dosya içinde uygulamayı indir aşağıdaki metni içeren klasör. NS dosyayı indir() İş adını içeren bir metin dosyası indirilecek metin.txt belirli bir URL yoluna. Dosya, betiğin başında okumak için açıldı. Dosyayı indirmek için Mime türü ve başlık bilgileri ayarlanır.

görünümler.py

# Mimetype modülünü içe aktar
ithalatmemeteblr
# İşletim sistemi modülünü içe aktarın
ithalatÇALIŞTIRMA SİSTEMİ
# HttpResponse modülünü içe aktarın
İtibaren Django.http.cevap vermekithalat http yanıtı
Tanılama dosyayı indir(sormak):
# Django projesinin temel dizinini tanımlayın
BASE_DIR =ÇALIŞTIRMA SİSTEMİ.yol.dizin adı(ÇALIŞTIRMA SİSTEMİ.yol.dizin adı(ÇALIŞTIRMA SİSTEMİ.yol.absat(__bir dosya__)))
# Metin dosyasının adını tanımlayın
dosya adı =“test.txt”
# Tam dosya yolunu tanımlayın
dosya yolu = BASE_DIR + ‘/uygulamayı indir/Dosyalar/’ + dosya adı
# İçeriği okumak için dosyayı açın
yol =(dosya yoluVe‘r’)
# Mim türünü ayarla
Mim türüVe _ =memeteblr.tahmin_türü(dosya yolu)
# HttpResponse’un dönüş değerini ayarlayın
cevap vermek = http yanıtı(yolVe içerik türü=Mim türü)
# Tarayıcıya gönderilecek HTTP başlığını ayarlayın
cevap vermek[‘İçerik-Yerleşim’]=“eklendi; dosya adı = %s” % dosya adı
# Dönüş yanıtı değeri
dönüş cevap vermek

şimdi aç urls.py Django projesinden bir dosya oluşturun ve dosyayı aşağıdaki komut dosyasıyla güncelleyin. metin dosyası, yol, ‘İndirmek/’ Temel URL’den sonra kullanılır.

urls.py

# Yol modülünü içe aktar
İtibaren Django.url’lerithalat yol
# Görünümleri içe aktar
İtibaren uygulamayı indir ithalat Denetleme
# İndirme için yol ayarla
url stilleri =[
yol(‘indirmek/’, Görüntüleme.dosyayı indir),
]

Tarayıcıyı açın ve kullanıcı için indirme iletişim kutusunu açacak olan aşağıdaki URL’yi çalıştırın.

8000 / indirme

Kullanıcı üzerine tıklarsa, dosya indirilir. tamam Düğmeyi seçtikten sonra Dosya ‘yı kaydet Salatalık.

Formu kullanarak bir PDF indirin:

İndirme bağlantısını indirme seçeneğiyle eklemek isterseniz, onu oluşturmak için bir forma ihtiyacınız olacaktır. adlı bir HTML dosyası oluşturun. file.html PDF’yi indirmek üzere tarayıcıda indirme bağlantısını görüntülemek için aşağıdaki komut dosyasını kullanma. Komut dosyasında kullanılan köprüye göre indirilecektir. CF.pdf bir dosya.

file.html

<Programlama dili>
<Başlık>dosyayı indir</Başlık>
</inşaat>
<gövde>

<h1>Django ile dosyayı indirin</h1>
<ahref=“{%url ‘download_pdf_file’ dosyaadı = ‘CF.pdf’%}”>PDF İndir</a>
</merkez>
</gövde>
</Programlama dili>

adlı başka bir görüntüleme dosyası oluşturun. görünüm2.py aşağıdaki metin ile. NS indir_pdf_dosyası () İşlev, indirme bağlantısını kullanarak bir dosyayı indirmek için komut dosyasında tanımlanmıştır. Dosya adı, bu işleve ikinci bağımsız değişkenin değeri olarak iletilecektir. Dosya, PDF’nin ikili modunda okunmak üzere açılmıştır. eğer buna değerse dosya adı Argüman bu nedenle boş file.html Dosya, indirme bağlantısını göstermek için tarayıcıda görüntülenecektir.

görünüm2.py

# Mimetype modülünü içe aktar
ithalatmemeteblr
# İşletim sistemi modülünü içe aktarın
ithalatÇALIŞTIRMA SİSTEMİ
# HttpResponse modülünü içe aktarın
İtibaren Django.http.cevap vermekithalat http yanıtı
# Modül oluşturucuyu içe aktar
İtibaren Django.kısaltmalarithalat yapar
# Şablonu kullanarak bir pdf dosyası indirmek için bir işlev tanımlayın
Tanılama indir_pdf_dosyası(sormakVe dosya adı=):
eğer dosya adı ! =:
# Django projesinin temel dizinini tanımlayın
BASE_DIR =ÇALIŞTIRMA SİSTEMİ.yol.dizin adı(ÇALIŞTIRMA SİSTEMİ.yol.dizin adı(ÇALIŞTIRMA SİSTEMİ.yol.absat(__bir dosya__)))
# Tam dosya yolunu tanımlayın
dosya yolu = BASE_DIR + ‘/uygulamayı indir/Dosyalar/’ + dosya adı
# İçeriği okumak için dosyayı açın
yol =(dosya yoluVe‘rb’)
# Mim türünü ayarla
Mim türüVe _ =memeteblr.tahmin_türü(dosya yolu)
# HttpResponse’un dönüş değerini ayarlayın
cevap vermek = http yanıtı(yolVe içerik türü=Mim türü)
# Tarayıcıya gönderilecek HTTP başlığını ayarlayın
cevap vermek[‘İçerik-Yerleşim’]=“eklendi; dosya adı = %s” % dosya adı
# Dönüş yanıtı değeri
dönüş cevap vermek
diğer:
# Şablonu indirin
dönüş yapar(sormakVe“dosya.html”)

Modernizasyon urls.py İndirme bağlantısını kullanarak belirli bir PDF’yi indirmek için aşağıdaki betiği dosyalayın.

urls.py

# Yol modülünü içe aktar
İtibaren Django.url’lerithalat yol
# Dış görünümleri ve dış görünümleri içe aktarın 2
İtibaren uygulamayı indir ithalat DenetlemeVe görünüm2
# İndirme için yol ayarla
url stilleri =[
yol(‘indirmek/’, Görüntüleme.dosyayı indir),
yol(‘PDF İndir/’, görünümler2.download_pdf_file, isim=‘download_pdf_file’),
yol(‘PDF İndir//’, görünümler2.download_pdf_file, isim=‘download_pdf_file’),
]

Tarayıcıyı açın ve aşağıdaki URL’yi görüntüleyecek olan aşağıdaki URL’yi çalıştırın. file.html tarayıcıda.

8000/indirpdf

Kullanıcı indirme bağlantısını tıklarsa, CF.pdf Değer aktarılacaktır. dosya adı Tartışma.

Bu dosya uygulamanın birincil konumunda mevcutsa, aşağıdaki iletişim kutusu görüntülenir. Kullanıcı, dosyayı indirmeden önce bir tarayıcıda veya belge görüntüleyicide açabilir veya dosyayı seçip açmadan doğrudan indirebilir. Dosya ‘yı kaydet basın ve tamam buton.

Çözüm:

Django’da metin ve PDF dosyaları için bir indirme seçeneği ekleme, bu eğitimde basit bir betik kullanılarak gösterilmektedir. Yeni Django kullanıcıları, bu öğreticiyi okuduktan sonra, bir Django uygulamasına indirme bağlantısı olmayan ve indirme bağlantısı olan bir indirme seçeneği ekleme fikrine sahip olacaklardır.

Diğer gönderilerimize göz at

[wpcin-random-posts]

İlk Yorumu Siz Yapın

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir