Предпосылки:
Перед тем, как практиковать сценарий этого руководства, вам необходимо выполнить следующие задачи.
- Установите Django версии 3+ на Ubuntu 20+ (желательно)
- Создайте проект Django
- Запустите сервер Django, чтобы проверить, работает ли сервер правильно или нет.
Настройте приложение Django:
Выполните следующую команду, чтобы создать приложение Django с именем скачать приложение. $ python3 manage.py startapp downloadapp
Выполните следующую команду, чтобы создать пользователя для доступа к базе данных Django. Если вы создали пользователя до этого, вам не нужно запускать команду.
$ python3 manage.py создает суперпользователяДобавьте название приложения в INSTALLED_APP часть настройки.ру файл.
INSTALLED_APPS = […
'downloadapp'
]
Создайте папку с именем шаблоны внутри скачать приложение папку и установите шаблон расположение приложения в ШАБЛОНЫ часть настройки.ру файл.
ШАБЛОНЫ = [… .
'DIRS': ['/ home / fahmida / django_pro / dopwnloadapp / templates'],
… .
,
]
Загрузите текстовый файл:
Измените взгляды.ру файл, который находится внутри скачать приложение папка со следующим скриптом. В Скачать файл() функция загрузит текстовый файл с именем текст.текст для определенного пути URL. Файл открыт для чтения в начале скрипта. Для загрузки файла заданы тип MIME и заголовок.
взгляды.ру
# Импортировать модуль mimetypesимпортировать миметипы
# импортировать модуль ОС
импорт ОС
# Импортировать модуль HttpResponse
из джанго.http.импорт ответа HttpResponse
def download_file (запрос):
# Определить базовый каталог проекта Django
BASE_DIR = os.дорожка.dirname (os.дорожка.dirname (os.дорожка.abspath (__ файл__)))
# Определить имя текстового файла
имя_файла = 'тест.текст'
# Определить полный путь к файлу
filepath = BASE_DIR + '/ downloadapp / Files /' + имя файла
# Открываем файл для чтения содержимого
путь = открытый (путь к файлу, 'r')
# Установите тип пантомимы
mime_type, _ = mimetypes.guess_type (путь к файлу)
# Устанавливаем возвращаемое значение HttpResponse
response = HttpResponse (путь, content_type = mime_type)
# Установить HTTP-заголовок для отправки в браузер
ответ ['Content-Disposition'] = "вложение; filename =% s"% filename
# Возвращаем значение ответа
ответ на ответ
Теперь откройте URL-адреса.ру файл из проекта Django и обновите файл следующим скриптом. Текстовый файл загрузится, если путь, 'скачать/' используется после базового URL.
URL-адреса.ру
# Импортировать модуль путииз джанго.путь импорта URL
# Импортировать просмотры
из просмотров загрузки приложения
# Установить путь для скачивания
urlpatterns = [
путь ('скачать /', просмотры.Скачать файл),
]
Откройте браузер и выполните следующий URL-адрес, который откроет диалоговое окно загрузки для пользователя.
http: // localhost: 8000 / скачать
Файл будет загружен, если пользователь щелкнет ОК кнопку после выбора Сохранить файл вариант.
Скачать PDF-файл по шаблону:
Шаблон потребуется создать, если вы хотите добавить вариант загрузки со ссылкой для загрузки. Создайте HTML-файл с именем файл.html с помощью следующего сценария, чтобы отобразить ссылку для загрузки в браузере для загрузки файла PDF. По гиперссылке, которая используется в скрипте, будет скачан CF.pdf файл.
файл.html
Скачать файл с помощью Django
Скачать PDF