Python
 Computer >> コンピューター >  >> プログラミング >> Python

Djangoモデルのファイルをダウンロード可能にするにはどうすればよいですか?


django-downloadviewパッケージを使用して、プロジェクトにあるすべてのファイルをダウンロード可能にすることができます。サーバー上でファイルをホストできます。

この記事では、Djangoプロジェクトでファイルをダウンロード可能にする方法を説明します。それは楽しいトピックになり、あなたはそれを気に入るはずです。

まず、パッケージをインストールします-

pip install django-downloadview

次に、Djangoプロジェクトとアプリを作成します。 URLを設定し、INSTALLED_APPSにアプリを追加するなどの基本的な操作を行います。また、settings.pyでMEDIA_ROOTとMEDIA_URLを設定します。

models.py内 、次の行を追加します-

from django.db import models

# Create your models here.
class Data(models.Model):
   file=models.FileField(upload_to='myfiles/',blank=True)

ここでは、アップロードされたファイルのファイル参照を保存するモデルを作成しました。このモデルのダミーデータを作成します。

urls.py内 −

from django.urls import path
from . import views
from django.conf import settings
from django.conf.urls.static import static
from django_downloadview import ObjectDownloadView
from .models import Data
download = ObjectDownloadView.as_view(model=Data, file_field=
'file')

urlpatterns = [
   path('', views.home,name="home"),
   path('download//', download, name="default"),

]
urlpatterns += static(settings.MEDIA_URL,
                              document_root=settings.MEDIA_ROOT)

2つのURLエンドポイントを作成しました。1つはフロントエンドをレンダリングするためのもので、もう1つはモデルのダウンロードビューを持つものです。 ObjectDownloadView は、ファイルをホストするモデルを取得するインスタンスであり、ファイルを保存するフィールドを定義しました。

views.py内 −

def home(request):
   return render(request,'home.html')

ここでは、フロントエンドのhtmlをレンダリングしました。

home.html内 、次のコードを追加します-

<!DOCTYPE html>
<html>
   <head>
      <title>
         TUT
      </title>
   </head>
   <body>
      <h2>HI</h2>
      <a href="https://127.0.0.1:8000/download/1/">
Download</a> // '1' is ID of a dummy data of our 'Data' model
   </body>
</html>

ここでは、ダミーデータとして作成したファイルを参照しました。 「1」はid ファイルが保存されるモデルインスタンスの例。

リンクを動的にすることもできますが、ここでは基本的なレベルに保ちたいと考えています。

出力

Djangoモデルのファイルをダウンロード可能にするにはどうすればよいですか? Djangoモデルのファイルをダウンロード可能にするにはどうすればよいですか?


  1. ファイルを小さくする方法

    今日の時代では、ディスクスペースは、コンピューターを使用するすべての人にとって、銅または天然ガスとしての重要なリソースにすぎません。人が自分のコンピュータにどれだけのディスク容量を持っていても、彼らは常にもっと多くを欲しがるでしょう。 HDDまたはSSDをデータでいっぱいにするのは難しい作業ではなく、時間もかかりません。そのため、コンピューターユーザーは、できるだけ多くの場所でできるだけ多くのバイトを削減したいと考えています。ディスクスペースの節約は、コンピューターを使用するすべての人の最優先事項の1つであり、コンピューターに保存されているファイルやフォルダーはコンピューターのHDD / SS

  2. iPhone を再起動する方法 (すべてのモデル)

    iOS は安定していますが、安定したオペレーティング システムでさえ、ランダムなバグ、グリッチ、およびその他のソフトウェア関連の問題に屈する可能性があります。他のデスクトップやモバイル デバイスと同様に、多くの場合、iPhone を再起動することが問題を解決する最善の方法です。 ソフト リセットは、iPhone のシステム キャッシュをクリアし、追加のトラブルシューティングを実行するための優れた出発点を提供します。読み進めて、iOS デバイスを再起動する複数の方法を学びましょう。 iPhone を再起動する必要がある理由 iPhone を再起動すると、デバイスが正常に機能しなくなる多くの